Cómo Hacer Un Programa De Cronómetro En Pascal

Tabla de contenido:

Cómo Hacer Un Programa De Cronómetro En Pascal
Cómo Hacer Un Programa De Cronómetro En Pascal

Video: Cómo Hacer Un Programa De Cronómetro En Pascal

Video: Cómo Hacer Un Programa De Cronómetro En Pascal
Video: Como hacer un cronometro en pascal 2024, Mayo
Anonim
Cómo hacer un programa de cronómetro en Pascal
Cómo hacer un programa de cronómetro en Pascal

Necesario

Entorno de programación PascalABC. NET o PascalTurbo

Instrucciones

Paso 1

Entonces, primero, abramos el programa. Creemos un nuevo archivo y especifiquemos los complementos. En este caso, necesitamos un módulo para trabajar con la consola: CRT.

para esto escribiremos:

usos

CRT;

Paso 2

Indiquemos las variables i, s, m - variables del tipo real.

var

i, s, m: Real;

Paso 3

Para iniciar el programa, escriba:

comenzar

E indicaremos el título de la ventana de la consola:

SetWindowTitle ('Cronómetro');

Paso 4

El procedimiento TextColor asigna un color al texto y la instrucción Write muestra el texto en la pantalla:

TextColor (LightGreen);

WriteLn ('Presione Enter para iniciar el cronómetro');

WriteLn ('Presione de nuevo para detener');

Escriba ('Haga clic de nuevo para empezar de nuevo');

El final Ln se mueve a la siguiente línea.

Paso 5

El operador ReadLn ingresa valores desde el teclado, pero en este caso solo espera a que el usuario presione Enter:

ReadLn;

Paso 6

Hacemos un bucle sin fin:

mientras (cierto) hacer

comenzar

La construcción while (true) do begin se traduce como: While (condición) do (). ¿Por qué empezar aquí?

En este caso, necesitamos un operador compuesto, lo que significa que si bien la condición es verdadera, se ejecutan varios operadores. Si no fuera por el comienzo, después de While, solo se ejecutó una instrucción, lo que conduciría a una operación incorrecta del programa. Para finalizar la instrucción While al final, escribimos end.

Paso 7

Ahora reiniciemos el contador:

i: = 0;

Paso 8

La siguiente declaración se traduce como: hasta que se presione la tecla do ().

mientras no presione la tecla

comenzar

El operador ClrScr borra la pantalla:

ClrScr;

Paso 9

Establecemos la condición: si los segundos son más de 60 y menos de 3600 (esto es necesario para que cuando el tiempo sea más de una hora, el programa imprima solo lo que está después del tercero si) entonces:

si (i> 60) y (i <3600) entonces comience

La variable m (minutos) es igual a: segundos divididos por 60 y redondeados al frente.

m: = Int (i / 60);

Y la variable s (segundos sin minutos) es igual a: todos los segundos menos minutos multiplicados por 60.

s: = i - m * 60;

Paso 10

La instrucción Write escribe cuántos minutos y segundos han pasado, y la instrucción end finaliza el trabajo de begin siguiendo la condición if:

Escriba (m, 'minutos (s) y', s: 1: 2, 'segundos (s)')

fin;

Función: 1: 2 significa que los segundos deben escribirse con dos decimales.

Paso 11

Si los segundos son menos de 60, simplemente escriba cuántos segundos han pasado con dos lugares decimales:

si yo <60 entonces

Escriba ('', i: 1: 2, 'segundos (a / s)');

Paso 12

Si los segundos son más de 3600 (es decir, más de una hora), entonces:

si i> 3600 entonces comience

m: = Int (i / 60);

s: = i - m * 60;

ch: = Int (m / 60);

m: = m - ch * 60;

Escriba (ch, 'hora (s)', m, 'minutos (s) y', s: 1: 2, 'segundos (s)');

fin;

Paso 13

Entonces, el programa escribió que han pasado 0 segundos, ahora aumenta el contador i en 10 milisegundos, y como el programa hace todo instantáneamente, hacemos un retraso por el mismo tiempo:

i: = i + 0,01;

Retraso (10);

A continuación, finalizamos la declaración While (no presionada la tecla):

fin;

Si el usuario presionó la tecla Enter, entonces el programa espera a que la presione nuevamente para iniciar el cronómetro nuevamente:

Readln;

Readln;

No es coincidencia que establezcamos el contador en cero después de la instrucción While (verdadero), porque cuando el usuario presiona Enter por segunda vez, el programa comenzará desde allí, reiniciará el contador y comenzará a contar nuevamente.

A continuación, finalizamos el while y para todo el programa:

fin;

Paso 14

Aquí está el programa completo:

usos

CRT;

var

Es real;

s: Real;

m: Real;

ch: Real;

comenzar

SetWindowTitle ('Cronómetro');

TextColor (LightGreen);

WriteLn ('Presione Enter para iniciar el cronómetro');

WriteLn ('Presione de nuevo para detener');

Escriba ('Haga clic de nuevo para empezar de nuevo');

ReadLn;

mientras (cierto) hacer

comenzar

i: = 0;

mientras no presione la tecla

comenzar

ClrScr;

si (i> 60) y (i <3600) entonces comience

m: = Int (i / 60);

s: = i - m * 60;

Escriba (m, 'minutos (s) y', s: 1: 2, 'segundos (s)')

fin;

si yo <60 entonces

Escriba ('', i: 1: 2, 'segundos (a / s)');

si i> 3600 entonces comience

m: = Int (i / 60);

s: = i - m * 60;

ch: = Int (m / 60);

m: = m - cad * 60;

Escriba (ch, 'hora (s)', m, 'minutos (s) y', s: 1: 2, 'segundos (s)');

fin;

i: = i + 0,01;

Retraso (10);

fin;

Readln;

Readln;

fin;

fin.

Imagen
Imagen

Paso 15

No resultó muy agradable, ¡pero el programa funciona correctamente!

Recomendado: