Solución |
|
#include
<stdio.h>
int main()
{
int
h1, h2, h3, m1, m2, m3, s1, s2, s3;
printf( "\n
INTRODUZCA LA PRIMERA HORA" );
printf( "\n
Horas: " );
scanf( "%d",
&h1 );
printf( "
Minutos: " );
scanf( "%d",
&m1 );
printf( "
Segundos: " );
scanf( "%d",
&s1 );
/*
Filtramos la primera hora */
while(
h1 < 0
|| h1 > 23
|| m1 < 0
|| m1 > 59
|| s1 < 0
|| s1 > 59
)
{
printf( "
ERROR:
Hora incorrecta, vuelva a introducirla." );
printf( "\n
Horas: " );
scanf( "%d",
&h1 );
printf( "
Minutos: " );
scanf( "%d",
&m1 );
printf( "
Segundos: " );
scanf( "%d",
&s1 );
}
printf( "\n
INTRODUZCA LA SEGUNDA HORA" );
printf( "\n
Horas: " );
scanf( "%d",
&h2 );
printf( "
Minutos: " );
scanf( "%d",
&m2 );
printf( "
Segundos: " );
scanf( "%d",
&s2 );
/*
Filtramos la segunda hora */
while( h2 < 0
|| h2 > 23
|| m2 < 0
|| m2 > 59
|| s2 < 0
|| s2 > 59
)
{
printf( "
ERROR:
Hora incorrecta, vuelva a introducirla." );
printf( "\n
Horas: " );
scanf( "%d",
&h2 );
printf( "
Minutos: " );
scanf( "%d",
&m2 );
printf( "
Segundos: " );
scanf( "%d",
&s2 );
}
if
( ( h1 > h2 ) ||
( h1 == h2 && m1 > m2 ) ||
( h1 == h2 && m1 == m2 && s1 >=
s2 ) )
printf( "\n
ERROR: Las horas son incorrectas." );
else
{
s3 = ( s2 + ( m2 +
h2 * 60
) * 60
) -
( s1 +
( m1 + h1 * 60
) * 60
);
h3 = s3 / 3600;
s3 = s3 % 3600;
m3 = s3 / 60;
s3 = s3 % 60;
printf(
"\n
Han
transcurrido %d horas, %d minutos y %d segundos.",
h3, m3, s3 );
}
return
0;
} |
|
|