En esta ocasión realizamos un algoritmo que simula un Reloj digital, este algoritmo en pseudocodigo fue desarrollado y probado con el simulador Pseint espero les guste.
Algoritmo que simula un Reloj en pseint
Simular el comportamiento de un reloj digital, imprimiendo la hora, minutos y segundos de un día desde las 0:00:00 horas hasta las 23:59:59 horas
Pseudocodigo de un reloj
Este programa permite ingresar la hora actual, ingresada en horas, minutos y segundos.
En el desarrollo de este algoritmo utilizamos tres ciclos mientras anidados para controlar las horas, los minutos y los segundos.
Bien como ya es costumbre vamos a explicar el funcionamiento de este algoritmo.
Algoritmo reloj
Lo primero que hacemos es declarar las variables, esto lo hacemos con la palabra reservada definir.
Definir hora, minuto, segundoss Como Entero
Utilizamos la función escribir y pedimos la hora actual.
Escribir «Dame la hora actual «
Este número lo almacenamos en la variable hora.
leer hora
Después pedimos los minutos.
Escribir «Dame los minutos”
Este número lo almacenamos en la variable minutos.
leer minuto
Ahora pedimos los segundos.
Escribir «Dame los segundos»
Este número lo almacenamos en la variable segundos
leer segundos
Ya con estos datos que pedimos podemos sincronizar correctamente la hora del reloj.
Utilizamos tres ciclos mientras anidados en el primero controlamos las horas, el segundo controla los minutos y el tercero y el más importante controla los segundos.
Mientras hora <= 23 hacer
Mientras minuto <= 59 hacer
Mientras segundoss <= 59 hacer
Bien como mencionaba el ciclo más importante es el de los segundos ya que este ciclo controla todo el reloj.
Lo primero que hacemos es limpiar la pantalla, esto lo hacemos para mostrar una sola hora.
Limpiar Pantalla
Bueno tratare de explicar el control del reloj espero pueda explicarme, evaluamos si la hora es mayor a 9.
si hora > 9 Entonces
Si la condición se cumple entonces mostramos en pantalla lo que se encuentra almacenado en la variable hora.
Escribir hora Sin Saltar
SiNo
Pero si la condición no se cumple entonces concatenamos un cero junto con la hora, esto lo hacemos para hacer el efecto. 01, 02 03 ….. 09 pues como sabemos del 1 al 9 se estaría mostrando únicamente un digito, es por eso que coloco un cero antes.
Escribir «0»,hora Sin Saltar
FinSi
Con los minutos hacemos exactamente lo mismo evaluamos si es mayor a nueve.
si minuto > 9 Entonces
Si la condición se cumple entonces mostramos en pantalla los minutos pero previamente le concatenamos dos: puntos para juntar la hora con los minutos y tenga este efecto: 03:02 tres horas con dos minutos.
Escribir «:»,minuto Sin Saltar
SiNo
Si la condición no se cumple pasa lo mismo que las horas además de concatenar los dos puntos: concatenamos un cero y después los minutos ya que del minuto 1 al 9 únicamente se muestra un digito.
Escribir «:0»,minuto Sin Saltar
FinSi
Con los segundos es lo mismo evaluamos si los segundos es mayor a 9. Ojo no me he equivocado la variable segundoss la he escrito con doble s esto lo hago así ya que la palabra segundos es una palabra reservada y no se pude usar.
si segundoss > 9 Entonces
Si la condición se cumple entonces concatenamos los dos: puntos y los segundos.
Escribir «:»,segundoss
SiNo
Si la condición no se cumple entonces concatenamos los dos puntos : el cero y los segundos ya mencionaba porque lo hago así.
Escribir «:0»,segundoss
FinSi
Después incrementamos la variable segundoss en uno.
segundoss = segundoss+1
Hacemos uso de la función esperar esta función es prácticamente la encargada de hacer la simulación del reloj, para que se vaya viendo el efecto de cambio de segundos, minutos y hora.
Esperar 1 segundo
FinMientras
segundoss = 0
minuto = minuto +1
FinMientras
minuto = 0
hora = hora +1
Cuando la variable hora sea igual a 24 entonces le asignamos a la variable hora el número cero, esto lo hacemos para que el reloj se reinicie y comience desde cero muévame con esto logramos un reloj que funcionara permanente.
si hora == 24 entonces
hora = 0
FinSi
FinMientras
FinAlgoritmo
Como hacer un reloj digital en pseint
Diagrama de flujo que simule un reloj
Te comparto la solución de este algoritmo en diagramas de flujo.
Algoritmo reloj definir hora,minuto,segundoss Como Entero Escribir "Dame la hora actual " leer hora Escribir "Dame los minutos " leer minuto Escribir "Dame los segundos" leer segundoss Mientras hora <= 23 hacer Mientras minuto <= 59 hacer Mientras segundoss <= 59 hacer Limpiar Pantalla si hora > 9 Entonces Escribir hora Sin Saltar SiNo Escribir "0",hora Sin Saltar FinSi si minuto > 9 Entonces Escribir ":",minuto Sin Saltar SiNo Escribir ":0",minuto Sin Saltar FinSi si segundoss > 9 Entonces Escribir ":",segundoss SiNo Escribir ":0",segundoss FinSi segundoss = segundoss+1 Esperar 1 segundo FinMientras segundoss = 0 minuto = minuto +1 FinMientras minuto = 0 hora = hora +1 si hora == 24 entonces hora = 0 FinSi FinMientras FinAlgoritmo
Espero haber explicado este algoritmo lo mejor posible te dejo el código fuente para que lo descargues, un saludo y nos vemos en la próxima entrega.