Código:
int main()
{
//Declaración de variables
int liHoras1, liMinutos1, liSegundos1,
liHoras2, liMinutos2, liSegundos2,
liHorasTotal, liMinutosTotal, liSegundosTotal;
//Entrada de datos
printf("Ingrese el tiempo #1 (HH:MM:SS): ");
scanf("%d:%d:%d", &liHoras1, &liMinutos1, &liSegundos1);
printf("Ingrese el tiempo #2 (HH:MM:SS): ");
scanf("%d:%d:%d", &liHoras2, &liMinutos2, &liSegundos2);
//Procesamiento
liHorasTotal = liHoras1 + liHoras2;
liMinutosTotal = liMinutos1 + liMinutos2;
liSegundosTotal = liSegundos1 + liSegundos2;
do
{
liMinutosTotal = liMinutosTotal - 60;
liHorasTotal = liHorasTotal + 1;
} while (liMinutosTotal >= 60);
if (liSegundosTotal >= 60)
{
liSegundosTotal = liSegundosTotal - 60;
liMinutosTotal = liMinutosTotal + 1;
}
//Salida de datos
printf("\nResultado: %d:%d:%d\n", liHorasTotal, liMinutosTotal, liSegundosTotal);
return 0;
}
Hola y gracias de antemano.
Mi código funciona pero, cuando los minutos son altos (ejemplo 200 minutos) se debe hacer algo. Lo único que se me ocurrió fue hacerlo con DO, WHILE para que le valla restando 60 cada vez que se pueda.
La pregunta es: es correcto esto, o hay otra solución usando IF?.
Estoy algo perdido, espero puedan ayudarme.
Gracias!.