Mis disculpas, no sé exactamente como expresar mi inquietud a través del título. Comienzo a programar en C++ (es mi primer lenguaje, xD) y tengo el siguiente problema:
Estoy realizando el siguiente programa:
//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:
//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.