Advertisement
any15015

Guia6_labo_Ej8

Sep 28th, 2023
180
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.60 KB | None | 0 0
  1. //Nombre: Analia Leyez
  2. //TP Nº: 6
  3. //EJ Nº: 8
  4. /*Comentarios: El duenio del gimnasio Laragym nos pide que realicemos un programa que les permita cargar todos los entrenamientos
  5. de sus 50 clientes, cada registro de entrenamiento contiene:
  6. - Numero de Entrenamiento (1 - 9999)
  7. - Cliente (101- 150)
  8. - Tipo de Entrenamiento ( 1 - 10 )
  9. - Tiempo del Entrenamiento (minutos)
  10. Puede haber varios registros de entrenamiento por cliente. La informacion no
  11. se encuentra agrupada ni ordenada. El fin de la carga de entrenamientos se
  12. indica con un numero de entrenamiento igual a cero, informar:
  13. - Por cada cliente, el tiempo total de entrenamiento (expresarlo en horas y
  14. minutos, ejemplo 70 minutos se expresaría 1 hora y 10 minutos).
  15. - Por cada cliente, los tipos de entrenamiento que realizo.
  16. - Por cada cada cliente y tipo de entrenamiento, la cantidad total de
  17. minutos entrenados. Solo listar aquellos registros que sean superiores a 0.
  18. - El número de cliente que mas tiempo haya entrenado.
  19. - Los tipos de entrenamiento que no se realizaron por ningun cliente.
  20.  
  21. */
  22. #include<iostream>
  23. using namespace std;
  24.  
  25. int main(void){
  26. const int clientes=50;
  27. int tiempoxTipoEnt[10][50]={};
  28. int nroEntrenam, tipoEntrenam, nroCliente, tiempoEntrenam;
  29. int acuTiempoXCliente=0, maxTiempoXCliente=0, clienteMaxTiempo, tiempoPorTipoJ;
  30.  
  31. cout << "Nro de entrenamiento: ";
  32. cin >> nroEntrenam;
  33. while(nroEntrenam!=0){
  34. cout << "Nro de cliente: ";
  35. cin >> nroCliente;
  36. cout << "Tipo de entrenamiento: ";
  37. cin >> tipoEntrenam;
  38. cout << "Tiempo de entrenamiento en min: ";
  39. cin >> tiempoEntrenam;
  40. tiempoxTipoEnt[tipoEntrenam-1][nroCliente-101]+=tiempoEntrenam;
  41.  
  42.     cout << endl << "Nro de entrenamiento: ";
  43.     cin >> nroEntrenam;
  44. }
  45.  
  46.  
  47. //Por cada cada cliente y tipo de entrenamiento, la cantidad total de
  48. //minutos entrenados. Solo listar aquellos registros que sean superiores a 0.
  49. // i= cliente    j= entrenamiento
  50. for(int i=0; i<50; i++){
  51.         cout << endl;
  52.         acuTiempoXCliente=0;
  53.     for(int j=0; j<10; j++){
  54.         if(tiempoxTipoEnt[j][i]!=0){
  55.             cout << "El cliente nro " << i+101 << " hizo en total " << tiempoxTipoEnt[j][i];
  56.             cout << " minutos de entrenamiento del tipo " <<  j+1 << endl;
  57.             acuTiempoXCliente += tiempoxTipoEnt[j][i];
  58.         }
  59.         //El número de cliente que mas tiempo haya entrenado.
  60.         if(acuTiempoXCliente>maxTiempoXCliente){
  61.             maxTiempoXCliente=acuTiempoXCliente;
  62.             clienteMaxTiempo= i+101;
  63.         }
  64.     }
  65.  
  66.     // Por cada cliente, el tiempo total de entrenamiento (expresarlo en horas y minutos)
  67.     if(acuTiempoXCliente!=0){
  68.         cout << "Tiempo total de entrenamiento: " << acuTiempoXCliente/60 << " horas y " << acuTiempoXCliente%60 << " minutos." << endl;
  69.  
  70.         //Por cada cliente, los tipos de entrenamiento que realizo.
  71.         cout << "Este cliente realizo entrenamientos del tipo: ";
  72.         for(int j=0; j<10; j++){
  73.         if(tiempoxTipoEnt[j][i]!=0){
  74.             cout << j+1 << ", ";
  75.             }
  76.         }
  77.         cout << endl;
  78.     }
  79.  
  80. }
  81.  
  82. cout << endl << "El cliente que mas tiempo entreno fue el nro " << clienteMaxTiempo;
  83. cout << " con un total de " << maxTiempoXCliente << " minutos" << endl;
  84.  
  85. // Los tipos de entrenamiento que no se realizaron por ningun cliente.
  86. cout << "Tipos de entrenamientos que ningun cliente realizo: ";
  87. for(int j=0; j<10; j++){
  88.         tiempoPorTipoJ=0;
  89.     for(int i=0; i<50; i++){
  90.         if(tiempoxTipoEnt[j][i]!=0){
  91.             tiempoPorTipoJ+=tiempoxTipoEnt[j][i];
  92.             }
  93.     }
  94.     if(tiempoPorTipoJ==0){
  95.         cout << j+1 << ", " << endl;
  96.     }
  97. }
  98.     return 0;
  99. }
  100.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement