• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Guest tsenart

until....

5 mensagens neste tópico

Olá pessoal... Estou a escrever este código que funciona bem sem o ciclo repeat mas com ele(com o while) diz-me que não posso usar operadores logicos com caracteres.... Entao como é que eu faço aquele while?

program vinte_pontoseis;

var
maior,menor,temp:real;
quant,cont:integer;
ans:char;

begin
    writeln;

write('        AMPLITUDE TeRMICA');
writeln;
writeln;
repeat
repeat

          writeln('Quantos valores vai introduzir?'); readln(quant);

        until quant>=2;


        write('Introduza um valor:  '); readln(temp);
maior:=temp;

for cont:=2 to quant do
	begin
	write('Introduza outro valor:  '); readln(temp);
	if temp>maior then
	   begin
	   menor:=maior;
	   maior:=temp;
	   end
	else
		menor:=temp;
	end;
writeln('A amplitude tErmica E: ',maior-menor:2:1,'graus');
        writeln;
        writeln('Quer repetir?'); readln(ans);
        
until ans='n' OR ans='N';

end.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta, em vez de

readln(ans);
until ans='n' OR ans='N';

fazer

ans=readkey;
until ord(ans)=ord('n') OR ord(ans)=ord('N');

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Vou experimentar mas antes gostava de perceber o que estou a escrever... thankz

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não podes fazer isto assim

readln(ans);
until ans='n' OR ans='N';

Tens de por parentesis assim

readln(ans);
until (ans='n') OR (ans='N');

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora