fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm> // Para std::sort
  4. #include <cstdlib> // Para rand() y srand()
  5. #include <ctime> // Para time()
  6. using namespace std;
  7.  
  8. // Función para generar ventas aleatorias de 9 a 12 prendas por día
  9. void generarVentas(vector<int>& ventas) {
  10. for (int& venta : ventas) {
  11. venta = rand() % 4 + 9; // Genera un número entre 9 y 12
  12. }
  13. }
  14.  
  15. // Función para calcular las ganancias por ventas
  16. int calcularGanancias(const vector<int>& ventas, int precioPrenda) {
  17. int totalGanancias = 0;
  18. for (int prendas : ventas) {
  19. totalGanancias += prendas * precioPrenda; // Multiplica prendas vendidas por el precio
  20. }
  21. return totalGanancias;
  22. }
  23.  
  24. // Función para calcular el sueldo total semanal
  25. int calcularSueldoSemanal(int sueldoBase, int ganancias) {
  26. return sueldoBase + ganancias; // Suma el sueldo base y las ganancias por ventas
  27. }
  28.  
  29. // Función para ordenar las ventas de mayor a menor
  30. void ordenarVentas(vector<int>& ventas) {
  31. sort(ventas.begin(), ventas.end(), greater<int>()); // Ordena de mayor a menor
  32. }
  33.  
  34. // Función principal
  35. int main() {
  36. srand(time(0)); // Inicializa la semilla para números aleatorios
  37.  
  38. // Variables
  39. const int DIAS_SEMANA = 7;
  40. const int PRECIO_PRENDA = 45; // Precio de cada prenda
  41. const int SUELDO_BASE = 800; // Sueldo base semanal
  42. vector<int> ventas(DIAS_SEMANA);
  43.  
  44. // Generar ventas aleatorias para la semana
  45. generarVentas(ventas);
  46.  
  47. // Calcular ganancias antes de ordenar
  48. int ganancias = calcularGanancias(ventas, PRECIO_PRENDA);
  49.  
  50. // Ordenar las ventas de mayor a menor
  51. ordenarVentas(ventas);
  52.  
  53. // Calcular el sueldo total semanal
  54. int sueldoTotal = calcularSueldoSemanal(SUELDO_BASE, ganancias);
  55.  
  56. // Mostrar resultados
  57. cout << "--- Resultados del Vendedor Intermedio ---\n";
  58. cout << "Ventas por día (ordenadas de mayor a menor, en número de prendas): ";
  59. for (int i = 0; i < DIAS_SEMANA; i++) {
  60. cout << ventas[i] << (i < DIAS_SEMANA - 1 ? ", " : "\n");
  61. }
  62. cout << "Ganancias por ventas: $" << ganancias << "\n";
  63. cout << "Sueldo total semanal (base + ganancias): $" << sueldoTotal << "\n";
  64.  
  65. return 0;
  66. }
  67.  
Success #stdin #stdout 0.01s 5280KB
stdin
Standard input is empty
stdout
--- Resultados del Vendedor Intermedio ---
Ventas por día (ordenadas de mayor a menor, en número de prendas): 12, 12, 12, 10, 10, 9, 9
Ganancias por ventas: $3330
Sueldo total semanal (base + ganancias): $4130