[ Foro de Pseudocódigo ]

algoritmo en pseint

09-May-2017 04:32
Invitado (alizerxs)
3 Respuestas

DISEÑAR UN ALGORITMO QUE CALCULE EL TIEMPO TRANSCURRIDO ENTRE DOS HORAS EN PSEINT

pedir hora1, minutos, segundos, am o pm
pedir hora2, minutos, segundos, am o pm
ejemplo
Hora 1= 10:25:30am
Hora 2= 10:25:30pm

Resultado 12:00:00


11-May-2017 02:42
Edilberto Tapias Mercado (+2)

Hola amigo, hice esto de rapidez espero te sirva apenas tenga tiempo trato de hacerlo de mejor forma y lo pondre por aca.

CODIGO PSEINT

Proceso horas
Definir hora1, hora2, horat, minutos1, minutos2, minutost, segundos1, segundos2, segundost, formato1, formato2 Como Entero;
Escribir "Escriba Hora Inicial";
Escribir "Hora"; Leer hora1; Escribir "Minutos"; leer minutos1; Escribir "Segundos"; leer segundos1;
Escribir "Escoja la opcion 1.Am , 2.Pm";
Leer formato1;
Escribir "Escriba Hora Final";
Escribir "Hora"; Leer hora2; Escribir "Minutos"; leer minutos2; Escribir "Segundos"; leer segundos2;
Escribir "Escoja la opcion 1.Am o 2.Pm";
Leer formato2;
Si (formato1==1 Y formato2==1) Entonces
horat=hora2-hora1; minutost=minutos2-minutos1; segundost=segundos2-segundos1;
Si (formato1==2 Y formato2==2) Entonces
horat=hora1-hora2; minutost=minutos1-minutos2; segundost=segundos1-segundos2;
FinSi
Sino
horat=(hora2+12)-hora1; minutost=minutos1-minutos2; segundost=segundos1-segundos2;
FinSi

Escribir "Tiempo Transcurrido ",horat,":",minutost,":",segundost;
FinProceso


11-May-2017 02:59
Edilberto Tapias Mercado (+2)

entre mas veo el codigo se me ocurren otras cosas,  si te da algunos de los tiempos en negativo solo seria meter las respuestas dentro de un if y evaluar si es menor(<) que cero(0) y si es asi multiplicarlo por (-1) eso seria todo.


11-May-2017 03:22
Edilberto Tapias Mercado (+2)

jejeje Hola Volvi,

ahora si este es definitivo

Proceso horas
Definir hora1, hora2, horat, minutos1, minutos2, minutost, segundos1, segundos2, segundost, formato1, formato2 Como Entero;
Escribir "Ecriba Hora Inicial";
Escribir "Hora"; Leer hora1; Escribir "Minutos"; leer minutos1; Escribir "Segundos"; leer segundos1;
Escribir "Escoja la opcion 1.Am , 2.Pm";
Leer formato1;
Escribir "Ecriba Hora Final";
Escribir "Hora"; Leer hora2; Escribir "Minutos"; leer minutos2; Escribir "Segundos"; leer segundos2;
Escribir "Escoja la opcion 1.Am o 2.Pm";
Leer formato2;
Si (formato1==1 Y formato2==1) Entonces
horat=hora2-hora1; minutost=minutos2-minutos1; segundost=segundos2-segundos1;
Sino
Si (formato1==2 Y formato2==2) Entonces
horat=hora2-hora1; minutost=minutos1-minutos2; segundost=segundos1-segundos2;
Sino
horat=(hora2+12)-hora1; minutost=minutos1-minutos2; segundost=segundos1-segundos2;
FinSi
FinSi
si(horat<0) Entonces
horat=horat*(-1);
FinSi
Si(minutost<0) Entonces
minutost=minutost*(-1);
FinSi
Si(segundost<0) Entonces
segundost=segundost*(-1);
FinSi
Escribir "Tiempo Transcurrido ",horat,":",minutost,":",segundost;
FinProceso






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)