Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Alumna: Julieta Barraza
- /*El dueño del gimnasio Laragym nos pide que realicemos un programa que les permita cargar todas los entrenamientos de sus 50 clientes,
- cada registro de entrenamiento contiene:
- -Numero de Entrenamiento (1 - 9999)
- -Cliente (101- 150)
- -Tipo de Entrenamiento ( 1 - 10 )
- -Tiempo del Entrenamiento (minutos)
- Puede haber varios registros de entrenamiento por cliente.
- La información no se encuentra agrupada ni ordenada.
- El fin de la carga de entrenamientos se indica con un número de entrenamiento igual a cero, informar:
- 1- Por cada cliente, el tiempo total de entrenamiento (expresarlo en horas y minutos, ejemplo 70 minutos se expresaría 1 hora y 10 minutos).
- 2 - Por cada cliente, los tipos de entrenamiento que realizó.
- 3 - Por cada cada cliente y tipo de entrenamiento, la cantidad total de minutos entrenados. Sólo listar aquellos registros que sean superiores a 0.
- 4- El número de cliente que más tiempo haya entrenado.
- 5 - Los tipos de entrenamiento que no se realizaron por ningún cliente.
- */
- #include <iostream>
- #include <iomanip>
- using namespace std;
- int main () {
- const int CLIENTES=50, MINUTOS=60, TIPOS=10;
- int nEntrenamiento, nCliente, tipoEntrenamiento, tiempoEntrenamiento; //consigna
- int x, i, vTiempoTotalEntrenamiento[CLIENTES] = {}, vHoras[CLIENTES] = {}, vMinutos[CLIENTES] = {}; //1
- int vEntrenamientosRealizados[CLIENTES] [TIPOS]= {}; //2 y 3
- int maximoCliente, maximoTiempoEntrenado=0; //4
- int acuTiempoXTipo[TIPOS] = {}; //5
- cout << "Ingrese numero de entrenamiento: " ;
- cin >> nEntrenamiento;
- while (nEntrenamiento != 0) {
- cout << "Ingrese numero de cliente: " ;
- cin >> nCliente;
- cout << "Ingrese tipo de entrenamiento: " ;
- cin >> tipoEntrenamiento;
- cout << "Ingrese tiempo de entrenamiento: " ;
- cin >> tiempoEntrenamiento;
- vTiempoTotalEntrenamiento[nCliente-101] += tiempoEntrenamiento; //1 - acumular tiempo de entrenamiento por cliente
- vEntrenamientosRealizados[nCliente-101] [tipoEntrenamiento-1]= tiempoEntrenamiento; //2 y 3- Por cada cliente, acumulo el tiempo por cada tipo de entrenamiento que realizó.
- cout << endl;
- cout << "Ingrese numero de entrenamiento: " ;
- cin >> nEntrenamiento;
- }
- cout << endl ;
- //1- Mostrar por cada cliente, tiempo de entrenamiento en formato de horas y minutos
- cout << endl << "-------------------Punto 1-------------------" << endl << endl;
- for (i=0; i<CLIENTES; i++) {
- vHoras[i] = vTiempoTotalEntrenamiento[i] / MINUTOS;
- vMinutos[i] = vTiempoTotalEntrenamiento[i] % MINUTOS;
- }
- for(x=0; x<CLIENTES; x++){
- if (vTiempoTotalEntrenamiento[x] != 0) { //if para que no se muestren los clientes que no entrenaron, si lo sacamos muestra todos
- cout << "El cliente " << x+101 << " entreno " << vHoras[x] << " hora/s y " << vMinutos[x] << " minutos." << endl ;
- }
- }
- cout << endl;
- //2 - Por cada cliente, los tipos de entrenamiento que realizó.
- cout << endl << "-------------------Punto 2-------------------" << endl << endl;
- for(x=0; x<CLIENTES; x++){
- for (i=0; i<TIPOS;i++) {
- if (vEntrenamientosRealizados [x][i]>0) {
- cout << "El cliente " << x+101 << " realizo los tipos de entrenamientos: " << i+1 << endl;
- }
- }
- }
- //3 - Por cada cada cliente y tipo de entrenamiento, la cantidad total de minutos entrenados. Sólo listar aquellos registros que sean superiores a 0.
- cout << endl << "-------------------Punto 3-------------------" << endl << endl;
- for(x=0; x<CLIENTES; x++){
- for (i=0; i<TIPOS;i++) {
- if (vEntrenamientosRealizados [x][i]>0) {
- cout << "El cliente " << x+101 << " entreno " << vEntrenamientosRealizados[x][i] << " minutos para el entrenamiento tipo " << i+1 <<endl;
- }
- }
- }
- //4- El número de cliente que más tiempo haya entrenado.}
- cout << endl << "-------------------Punto 4-------------------" << endl << endl;
- for (i=0; i<CLIENTES; i++) {
- if (vTiempoTotalEntrenamiento[i]>maximoTiempoEntrenado) {
- maximoTiempoEntrenado=vTiempoTotalEntrenamiento[i];
- maximoCliente=i+101;
- }
- }
- cout << "El cliente que mas entreno en total fue el " << maximoCliente << endl;
- //5 - Los tipos de entrenamiento que no se realizaron por ningún cliente.
- cout << endl << "-------------------Punto 5-------------------" << endl << endl;
- for(x=0; x<CLIENTES; x++){
- for (i=0; i<TIPOS;i++) {
- acuTiempoXTipo[i] += vEntrenamientosRealizados[x][i];
- }
- }
- for (i=0; i<TIPOS; i++) {
- if (acuTiempoXTipo[i]==0) {
- cout << "El tipo de entrenamiento " << i+1 << " nunca se realizo" << endl;
- }
- }
- system("pause>nul");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement