Informática, perguntado por Tamires2017, 1 ano atrás


– Elabore um algoritmo que solicite ao operador a idade de um grupo de pessoas (várias), processe e apresente:
a) a idade média das pessoas;
b) a maior idade e quantas pessoas a tiveram;
c) a menor idade e quantas pessoas a tiveram.

Atenção:
1) quando a idade informada for igual a zero, finalizar as entradas e mostrar os resultados processados.
2) Validar corretivamente para que a idade não seja inferior a zero e nem superior a 120.
3) Verificar se houve entrada de dados, caso não, dê uma mensagem.
4) Lembre-se que a primeira idade informada será a maior e/ou menor em relação as demais idades que serão informadas.

Observação1:
1) Criar as seguintes funções:
a) Uma função para validar corretivamente a idade para estar no intervalo de 0 a 130.
b) uma função para processar o cálculo da média, retornando o resultado para o código principal onde será mostrado.
2) NÃO usar estrutura de vetor e/ou matriz.


alanfjantz: Qual linguagem usar?
Tamires2017: Portugol
Tamires2017: Preciso de um algoritmo simples que rode no VisualG

Soluções para a tarefa

Respondido por bokomoko
1
Dá para fazer tranquilo sem vetor/matriz, afinal, não se pede para fazer algum comparativo entre os dados depois de coletados.

Um truque aqui para simplificar o código é lembrar da restrição das idades. Ou seja, as idades só podem assumir valor entre 1 e 120, inclusive.

Sendo assim, definimos o valor da MAIOR idade como -1. Na primeira comparação que houver, a idade informada se tornará a maior idade.
O mesmo acontece com o valor da MENOR idade. Colocamos como 121. Na primeira comparação que houver, a idade informada se tornará a menor  idade. Isso simplifica demais o código.

Eis o programa em python, ricamente comentado.
https://repl.it/@bokomoko/senso-de-media-de-idades-sem-vetor
Perguntas interessantes