Estoy realizando el siguiente programa:
Código
//Haga un programa que ingrese la hora (HH:MM) a la que se ingresa una torta al horno //, el tiempo de coccion y el meridiano (AM/PM). Tiene que imprimir la hora a la que la torta //se debe sacar del horno junto al meridiano actualizado.
Es obvio que tengo que agregar un char que indique si es AM o PM. Lo hice como pude y como salió de mi cabeza, pero no se si es lo correcto o si es lo optimo. Oh, hay un limite o condición. Solo puedo usar las librerias que ven y la sentencia IF
Les agradecería su ayuda n.n.
Si no les molesta aprovecharé este post para comentar otras inquietudes.
Aquí el programa que hice:
Código
//Haga un programa que ingrese la hora (HH:MM) a la que se ingresa una torta al horno //, el tiempo de cocción y el meridiano (AM/PM). Tiene que imprimir la hora a la que la torta //se debe sacar del horno junto al meridiano actualizado. #include <iostream> #include <conio.h> #include <stdio.h> using namespace std; int main () { int hor, min, hors, mins, mincoc; char car; printf ("Escribe el meridiano a (AM) o p (PM): "); car=getchar(); printf ("\n\nIngrese la hora (AM/PM): "); scanf ("%d", &hor); printf ("\n\nIngrese los minutos (AM/PM): "); scanf ("%d", &min); if ((car=='a' || car=='p') && (hor<13 || min<60) ) { cout<<endl<<endl<<"Son las "<<hor<<":"<<min<<" "<<car<<endl<<endl<<"Ingrese los minutos de cocción: "; cin>>mincoc; mins=min+mincoc; if (mins>=60) {hors=hor+(mins/60); mins%=60;} if (hor==12) { if (hors>12) {hors%=12;} printf ("Saque el pastel a las %d:%02d %c", hors, mins, car); } else { if (hors>12) {hors%=12;} if (hors>=12) { if (car=='a') car='p'; else car='a'; } printf ("Saque el pastel a las %d:%02d %c", hors, mins, car); } } else cout<<endl<<endl<<"Ingreso el meridiano de forma incorrecta, la hora en formato 24h, o se excedió en los minutos."; }
Si no les molesta aprovecharé este post para comentar otras inquietudes a medida que surjan.