Mostrar entero mayor y menor
Publicado por anonymous (1 intervención) el 01/10/2017 13:21:55
Hola, soy theroxd4n y estoy empezando a programar en Pascal. Me han pedido hacer un programita en el que el usuario tiene que ingresar una serie aleatoria de números enteros, a elección del usuario. Cuando el usuario ingrese el numero 0, el programa dejara de leer números y mostrará por pantalla el numero mayor y menor de los ingresados. Hasta aquí todo bien, he hecho el programa y funciona, pero en el numero menor siempre sale el 0, puesto que aunque el 0 sirve para dejar de leer números, también lo almacena en la variable numero1 y por tanto el menor siempre va a ser el 0. ¿Existe alguna manera de excluir el 0 del análisis y que el menor sea el segundo menor ingresado? Aquí os dejo mi código:
Gracias, un saludo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
PROGRAM mayor_menor;
VAR
mayor, menor,numero1, numero2: integer;
salir: boolean;
BEGIN
numero1:=0;
numero2:=0;
write('Introduce un numero (para terminar escribe un 0): ');
readln(numero1);
repeat
numero2:=numero1;
write('Introduce un numero (para terminar escribe un 0): ');
readln(numero1);
IF (numero1<numero2) THEN
menor:=numero1
ELSE
mayor:=numero1;
salir:=(numero1=0);
UNTIL(salir);
writeln('El mayor numero es: ', mayor);
writeln('El menor numero es: ', menor);
readln;
END.
Gracias, un saludo.
Valora esta pregunta
0