Problema 1
DoisMaiores
inicio
inteiro i, valores[10], maior, segundoMaior;
escrever linha, "Introduza 10 numeros: ";
(* Ler os valores e procurar o maior: *)
ler para valores[0];
maior <- valores[0];
para i <- 1, 9:
ler para valores[i];
se valores[i] > maior:
maior <- valores[i];
(* Procurar o segundo maior: *)
segundoMaior <- maior;
para i <- 0, 9:
se valores[i] maior e (segundoMaior = maior ou
valores[i] > segundoMaior):
segundoMaior <- valores[i];
(* Escrita do resultado: *)
se segundoMaior = maior:
escrever "Os valores sao todos: ", maior, linha;
senao:
escrever "Maior = ", maior, linha;
escrever "Segundo maior = ", segundoMaior, linha;
fim.
Note-se que a solução apresentada prevê o caso de não existirem dois valores distintos na sequência, isto é, o caso de os 10 valores serem iguais.
Note-se ainda que o problema pode ser resolvido de muitas outras maneiras, porventura melhores. Por exemplo, haverá soluções para o problema usando apenas um ciclo? Como?
Problema 2
Ver resolução do exercício 2.a) da aula prática 3.
| Página
concebida e mantida por Eng. Manuel Menezes de Sequeira (última actualização 2006/07/07) Copyright © 1996-2001 ISCTE |
||||