problema con pascal
Publicado por victor (10 intervenciones) el 24/04/2008 22:54:47
Hola estoy con este programa y me falla el bucle repeat-until , resulta que llega al final a la condicion y en vez de preguntar si o no , salta otra vez al principio sin evaluar la condicion , me podeis decir en donde fallo?? sal2s
Program personal;
Var
nombre: string[40];
edad: integer;
peso: integer;
altura: real;
relativo: real;
seguir: char;
Const
pesomin= 20;
pesomax= 26;
begin
repeat
writeln;
writeln('Introduzca su nombre:');
read (nombre);
writeln ('Introduzca su edad:');
read (edad);
writeln ('Introduzca su peso');
read (peso);
writeln ('Introduzca su altura:');
read (altura);
relativo:=peso/(altura*altura);
writeln();
writeln ('Nombre: ',nombre,' Edad: ',edad,' Peso: ', peso,' Altura: ', altura:0:2);
writeln ('Su peso relativo es:',relativo:0:2);
if (relativo > pesomax) then
writeln('peso por encima de lo recomendado')
else
if (relativo < pesomin) then
writeln(' peso por debajo de lo recomendado')
else
writeln('Su peso es correcto');
writeln;
writeln ('Desea continuar (S/N)?: ');
readln (seguir);
until seguir= 'n';
end.
Program personal;
Var
nombre: string[40];
edad: integer;
peso: integer;
altura: real;
relativo: real;
seguir: char;
Const
pesomin= 20;
pesomax= 26;
begin
repeat
writeln;
writeln('Introduzca su nombre:');
read (nombre);
writeln ('Introduzca su edad:');
read (edad);
writeln ('Introduzca su peso');
read (peso);
writeln ('Introduzca su altura:');
read (altura);
relativo:=peso/(altura*altura);
writeln();
writeln ('Nombre: ',nombre,' Edad: ',edad,' Peso: ', peso,' Altura: ', altura:0:2);
writeln ('Su peso relativo es:',relativo:0:2);
if (relativo > pesomax) then
writeln('peso por encima de lo recomendado')
else
if (relativo < pesomin) then
writeln(' peso por debajo de lo recomendado')
else
writeln('Su peso es correcto');
writeln;
writeln ('Desea continuar (S/N)?: ');
readln (seguir);
until seguir= 'n';
end.
Valora esta pregunta


0