Quando numa aula o professor nos propôs a escrita de um algoritmo/programa em Pascal que, ao introduzir três números inteiros diferentes, descobrisse e nos indicasse qual deles era o maior, todos nós achámos absurdo o seu desafio. Mas a verdade é que se mostrou algo nada imediato de concretizar!
O algoritmo deste programa faz o mesmo que um humano faria face a este problema. O utilizador introduz três números inteiros e o programa associa cada um deles às letras a, b e c. De seguida, ele verifica se a é maior que b e, se o for, verifica se é também maior que c. Caso se verifique esta última condição, o programa escreverá de imediato "a é o maior.". Caso contrário, escreverá "c é o maior.".
Mas se a não for maior que b mas sim menor, será feita uma nova análise, onde se vai averiguar se b é maior que c. E se o for, então "b é o maior". Se não o for, então "c é o maior".

Código:

Program Calcular_o_maior_numero;
var a,b,c:integer;
Begin
repeat
write('Inserir:'); readln (a);
write('Inserir:'); readln (b);
write('Inserir:'); readln (c);
if a>b then
if a>c then writeln(a,' é o maior.')
else writeln(c,' é o maior.');
if a<b then
if b>c then writeln(b,' é o maior.')
else writeln(c,' é o maior.');
writeln('');
until 1<>1;
End.

Nota: para quem não percebe para que servem as palavras "repeat" e "until", elas servem para definir um ciclo de repetição, ou seja, será REPETIDO todo o segmento de código entre as duas palavras ATÉ a condição apresentada após a palavra "until" se verificar. "1<>1" quer dizer "1 é diferente que 1" e como isso nunca será verdadeiro, o programa repetir-se-á sempre que chege ao fim do ciclo. Há, contudo, maneiras de fazer ciclos de repetição limitados.

Voltar