I2luY2x1ZGUgJmx0O2lvc3RyZWFtJmd0OwojaW5jbHVkZSAmbHQ7aW9tYW5pcCZndDsKI2luY2x1ZGUgJmx0O2FsZ29yaXRobSZndDsKI2luY2x1ZGUgJmx0O2Z1bmN0aW9uYWwmZ3Q7CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgpzdHJ1Y3QgVmVuZGVkb3IgewogICAgc3RyaW5nIG5vbWJyZTsKICAgIGludCB2ZW50YXNbN107IC8vIFZlbnRhcyBkZSBsdW5lcyBhIGRvbWluZ28KfTsKCmRvdWJsZSBjYWxjdWxhclN1ZWxkb1RvdGFsKGludCB2ZW50YXNbXSkgewogICAgY29uc3QgZG91YmxlIHN1ZWxkb0Jhc2UgPSA4MDAuMDsKICAgIGRvdWJsZSBjb21pc2lvblRvdGFsID0gMC4wOwoKICAgIGZvciAoaW50IGkgPSAwOyBpICZsdDsgNzsgKytpKSB7CiAgICAgICAgZG91YmxlIGNvbWlzaW9uUG9yUHJlbmRhID0gMC4wOwogICAgICAgIGlmICh2ZW50YXNbaV0gJmx0Oz0gNTApIHsKICAgICAgICAgICAgY29taXNpb25Qb3JQcmVuZGEgPSAyLjAwOwogICAgICAgIH0gZWxzZSBpZiAodmVudGFzW2ldICZsdDs9IDEwMCkgewogICAgICAgICAgICBjb21pc2lvblBvclByZW5kYSA9IDMuNTA7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgY29taXNpb25Qb3JQcmVuZGEgPSA1LjAwOwogICAgICAgIH0KICAgICAgICBjb21pc2lvblRvdGFsICs9IHZlbnRhc1tpXSAqIGNvbWlzaW9uUG9yUHJlbmRhOwogICAgfQoKICAgIHJldHVybiBzdWVsZG9CYXNlICsgY29taXNpb25Ub3RhbDsKfQoKdm9pZCBvcmRlbmFyVmVudGFzKGludCB2ZW50YXNbXSkgewogICAgc29ydCh2ZW50YXMsIHZlbnRhcyArIDcsIGdyZWF0ZXImbHQ7aW50Jmd0OygpKTsKfQoKaW50IG1haW4oKSB7CiAgICBWZW5kZWRvciB2ZW5kZWRvcmVzW10gPSB7CiAgICAgICAgeyZxdW90O0p1YW4gUCZlYWN1dGU7cmV6JnF1b3Q7LCB7NDUsIDYwLCA3MCwgODAsIDkwLCAxMDAsIDExMH19LAogICAgICAgIHsmcXVvdDtBbmEgRyZvYWN1dGU7bWV6JnF1b3Q7LCB7MzAsIDQwLCA1MCwgNjAsIDcwLCA4MCwgOTB9fSwKICAgICAgICB7JnF1b3Q7THVpcyBNYXJ0JmlhY3V0ZTtuZXomcXVvdDssIHsyMCwgMzAsIDQwLCA1MCwgNjAsIDcwLCA4MH19CiAgICB9OwoKICAgIGNvdXQgJmx0OyZsdDsgZml4ZWQgJmx0OyZsdDsgc2V0cHJlY2lzaW9uKDIpOwoKICAgIGZvciAoYXV0byZhbXA7IHYgOiB2ZW5kZWRvcmVzKSB7CiAgICAgICAgb3JkZW5hclZlbnRhcyh2LnZlbnRhcyk7CiAgICAgICAgZG91YmxlIHN1ZWxkb1RvdGFsID0gY2FsY3VsYXJTdWVsZG9Ub3RhbCh2LnZlbnRhcyk7CiAgICAgICAgY291dCAmbHQ7Jmx0OyAmcXVvdDtWZW5kZWRvcjogJnF1b3Q7ICZsdDsmbHQ7IHYubm9tYnJlICZsdDsmbHQ7IGVuZGw7CiAgICAgICAgY291dCAmbHQ7Jmx0OyAmcXVvdDtWZW50YXMgb3JkZW5hZGFzOiAmcXVvdDs7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgJmx0OyA3OyArK2kpIHsKICAgICAgICAgICAgY291dCAmbHQ7Jmx0OyB2LnZlbnRhc1tpXSAmbHQ7Jmx0OyAmcXVvdDsgJnF1b3Q7OwogICAgICAgIH0KICAgICAgICBjb3V0ICZsdDsmbHQ7IGVuZGw7CiAgICAgICAgY291dCAmbHQ7Jmx0OyAmcXVvdDtTdWVsZG8gVG90YWw6ICQmcXVvdDsgJmx0OyZsdDsgc3VlbGRvVG90YWwgJmx0OyZsdDsgZW5kbDsKICAgICAgICBjb3V0ICZsdDsmbHQ7ICZxdW90Oy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tJnF1b3Q7ICZsdDsmbHQ7IGVuZGw7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0K
#include <iostream>
#include <iomanip>
#include <algorithm>
#include <functional>
using namespace std;
struct Vendedor {
string nombre;
int ventas[7]; // Ventas de lunes a domingo
};
double calcularSueldoTotal(int ventas[]) {
const double sueldoBase = 800.0;
double comisionTotal = 0.0;
for (int i = 0; i < 7; ++i) {
double comisionPorPrenda = 0.0;
if (ventas[i] <= 50) {
comisionPorPrenda = 2.00;
} else if (ventas[i] <= 100) {
comisionPorPrenda = 3.50;
} else {
comisionPorPrenda = 5.00;
}
comisionTotal += ventas[i] * comisionPorPrenda;
}
return sueldoBase + comisionTotal;
}
void ordenarVentas(int ventas[]) {
sort(ventas, ventas + 7, greater<int>());
}
int main() {
Vendedor vendedores[] = {
{"Juan Pérez", {45, 60, 70, 80, 90, 100, 110}},
{"Ana Gómez", {30, 40, 50, 60, 70, 80, 90}},
{"Luis Martínez", {20, 30, 40, 50, 60, 70, 80}}
};
cout << fixed << setprecision(2);
for (auto& v : vendedores) {
ordenarVentas(v.ventas);
double sueldoTotal = calcularSueldoTotal(v.ventas);
cout << "Vendedor: " << v.nombre << endl;
cout << "Ventas ordenadas: ";
for (int i = 0; i < 7; ++i) {
cout << v.ventas[i] << " ";
}
cout << endl;
cout << "Sueldo Total: $" << sueldoTotal << endl;
cout << "-----------------------------" << endl;
}
return 0;
}