Faça um programa que receba a idade, a altura e o peso de cinco pessoas, calcule e mostre:
  • A quantidade de pessoas com idade superior a 50 anos;
  • A média das alturas das pessoas com idade entre 10 e 20 anos;
  • A porcentagem de pessoas com peso inferior a 40 kg entre todas as pessoas analisadas.

Passo 1

O enunciado pede que façamos um programa que leia, para exatamente cinco pessoas, três dados: a idade, a altura e o peso. A partir desses dados, o programa deve calcular e mostrar três coisas separadas:
  1. A quantidade de pessoas com idade superior a \,50 anos.
  2. A média das alturas das pessoas cuja idade está entre \,10 e \,20 anos (incluindo \,10 e \,20 presumivelmente).
  3. A porcentagem de pessoas com peso inferior a \,40 kg, em relação ao total de pessoas analisadas (que é \,5 pessoas).
Informações relevantes dadas pelo enunciado:
  • Número total de pessoas: \,5.
  • Para cada pessoa temos: idade (inteiro), altura (número real) e peso (número real).
  • Resultados pedidos: um contador de idosos (> \,50), uma média de alturas condicionada (idade entre \,10 e \,20), e uma porcentagem de pessoas com peso < \,40 kg.

Passo 2

Vamos definir as variáveis que o programa vai usar (o que cada uma guarda) e os valores iniciais:
  • \text{total} = 5 — número total de pessoas (constante).
  • \text{count\_over\_50} — contador de pessoas com idade \,>\,50. Inicia em \,0.
  • \text{count\_10\_20} — contador de pessoas com idade entre \,10 e \,20 (inclusive). Inicia em \,0.
  • \text{height\_sum\_10\_20} — acumulador da soma das alturas de quem tem idade entre \,10 e \,20. Inicia em \,0,0.
  • \text{count\_weight\_below\_40} — contador de pessoas com peso \,<\,40 kg. Inicia em \,0.
Porque usar contadores e acumuladores?
  • Contador: guarda quantas entradas satisfazem uma condição (ex.: idade > 50).
  • Acumulador: soma valores (ex.: alturas) para depois calcular média dividindo pela quantidade (contador correspondente).

Passo 3

Explicação do processo passo a passo (algoritmo):
  1. Repetir para cada uma das \,\text{total}=5 pessoas:
    • Ler a idade, a altura e o peso.
    • Se a idade for maior que \,50, incrementar \text{count\_over\_50} em \,1.
    • Se a idade estiver entre \,10 e \,20 (inclusive), incrementar \text{count\_10\_20} em \,1 e somar a altura a \text{height\_sum\_10\_20}.
    • Se o peso for menor que \,40, incrementar \text{count\_weight\_below\_40} em \,1.
  2. Após ler os \,5 registros, calcular:
    • A média das alturas para o grupo \,10\le idade \le\,20 pela fórmula da média: \bar{h} = \frac{\text{height\_sum\_10\_20}}{\text{count\_10\_20}}Observação importante: devemos proteger contra divisão por zero — se \text{count\_10\_20}=0 então não existe média (podemos mostrar \,0 ou uma mensagem dizendo “nenhuma pessoa nesta faixa”).
    • A porcentagem de pessoas com peso < \,40 kg: \% = \frac{\text{count\_weight\_below\_40}}{\text{total}} \times 100
  3. Exibir os três resultados: \text{count\_over\_50}, a média \bar{h} (ou mensagem), e a porcentagem.

Passo 4

Pequena “aula” sobre média e porcentagem (para ficar bem mastigado):
  • Média aritmética: se você tem n alturas h_1,h_2,\dots,h_n, a média é \bar{h}=\frac{1}{n}\sum_{i=1}^{n} h_i.No nosso caso n=\text{count\_10\_20} e \sum h_i = \text{height\_sum\_10\_20}.
  • Porcentagem: dizer “x por cento de 5” significa x\%= \dfrac{x}{5}\times 100. Mais genericamente, se temos \,k ocorrências em \,N casos, a porcentagem é \text{porcentagem} = \frac{k}{N}\times 100.
  • Evitar divisão por zero: sempre verificar se o denominador é diferente de \,0 antes de dividir. Se for \,0, tratar o caso separadamente (ex.: mostrar que não há pessoas naquela faixa para calcular a média).

Passo 5

Atualização por iteração — exatamente o que fazer quando lemos uma pessoa (mostro em palavras bem claras pra você replicar na prova):
  • Ler \text{idade}.
    • Se \text{idade} > 50 então faça \text{count\_over\_50} \gets \text{count\_over\_50} + 1.
    • Se 10 \le \text{idade} \le 20 então:
      • \text{count\_10\_20} \gets \text{count\_10\_20} + 1.
      • \text{height\_sum\_10\_20} \gets \text{height\_sum\_10\_20} + \text{altura}.
  • Ler \text{peso}.
    • Se \text{peso} < 40 então \text{count\_weight\_below\_40} \gets \text{count\_weight\_below\_40} + 1.
Isso é só aplicar condicionais e atualizações de variáveis — nada mágico, é repetição + testes + soma.

Passo 6

Mostro agora um exemplo concreto com cinco pessoas (eu escolho números só para ilustrar passo a passo — isso te ajuda a ver as contas). Dados de exemplo (vou listar \text{idade}, \text{altura (m)}, \text{peso (kg)}):
  1. (\;55,\;1{,}70,\;78{,}0\;)
  2. (\;16,\;1{,}65,\;52{,}0\;)
  3. (\;12,\;1{,}60,\;38{,}0\;)
  4. (\;8,\;1{,}20,\;30{,}0\;)
  5. (\;51,\;1{,}80,\;39{,}5\;)
Agora passo a passo as atualizações (começando todos os contadores em \,0 e o acumulador em \,0{,}0):
  • Pessoa 1: \text{idade}=55>50 então \text{count\_over\_50}=1. Idade não está entre \,10 e \,20. Peso \,78{,}0\ge40 então \text{count\_weight\_below\_40}=0.
  • Pessoa 2: \text{idade}=16 entra na faixa [10,20], então \text{count\_10\_20}=1 e \text{height\_sum\_10\_20}=1{,}65. Peso \,52{,}0\ge40 sem incremento no contador de peso.
  • Pessoa 3: \text{idade}=12 entra na faixa, \text{count\_10\_20}=2, \text{height\_sum\_10\_20}=1{,}65+1{,}60=3{,}25. Peso \,38{,}0<40 então \text{count\_weight\_below\_40}=1.
  • Pessoa 4: \text{idade}=8 não entra em nenhuma das duas faixas de idade; peso \,30{,}0<40 então \text{count\_weight\_below\_40}=2.
  • Pessoa 5: \text{idade}=51>50 então \text{count\_over\_50}=2. Peso \,39{,}5<40 então \text{count\_weight\_below\_40}=3.
Resultados intermediários ao fim:
  • \text{count\_over\_50}=2.
  • \text{count\_10\_20}=2 e \text{height\_sum\_10\_20}=3{,}25.
  • \text{count\_weight\_below\_40}=3.
    Agora as contas finais:
  • Média das alturas na faixa [10,20]: \bar{h}=\frac{\text{height\_sum\_10\_20}}{\text{count\_10\_20}}=\frac{3{,}25}{2}=1{,}625\\ \text{m}.
  • Porcentagem de pessoas com peso < \,40 kg: \%=\frac{3}{5}\times 100 = 60\%.
Então, para esses dados de exemplo, os resultados seriam:
  • Quantidade com idade > \,50: \,2.
  • Média das alturas entre \,10 e \,20: \,1{,}625 m.
  • Porcentagem com peso < \,40 kg: \,60\%.

Passo 7

Sugestão de implementação em Python (explicada): o programa abaixo segue exatamente o algoritmo que descrevemos: inicializa contadores, itera \,5 vezes, faz leituras com a função \text{input}(), converte para o tipo adequado ( \text{int} para idade, \text{float} para altura e peso), atualiza variáveis e calcula os resultados no final. Também trata o caso em que não há pessoas na faixa [10,20] (evita divisão por zero imprimindo uma mensagem apropriada).

Resposta

# Programa que lê idade, altura e peso de 5 pessoas e calcula os resultados pedidos.

total = 5

count_over_50 = 0
count_10_20 = 0
height_sum_10_20 = 0.0
count_weight_below_40 = 0

for i in range(total):
    idade = int(input("Idade: "))
    altura = float(input("Altura (m): "))
    peso = float(input("Peso (kg): "))

    if idade > 50:
        count_over_50 += 1

    if 10 <= idade <= 20:
        count_10_20 += 1
        height_sum_10_20 += altura

    if peso < 40:
        count_weight_below_40 += 1

# Cálculo da média das alturas na faixa 10..20 (com proteção contra divisão por zero)
if count_10_20 > 0:
    average_height_10_20 = height_sum_10_20 / count_10_20
else:
    average_height_10_20 = None  # sinaliza que não há dados nessa faixa

# Cálculo da porcentagem de pessoas com peso < 40 kg
percentage_below_40 = (count_weight_below_40 / total) * 100

# Saída dos resultados
print(f"Quantidade de pessoas com idade > 50: {count_over_50}")
if average_height_10_20 is not None:
    print(f"Média das alturas (idade entre 10 e 20): {average_height_10_20:.3f} m")
else:
    print("Média das alturas (idade entre 10 e 20): nao ha pessoas nessa faixa")
print(f"Porcentagem de pessoas com peso < 40 kg: {percentage_below_40:.1f}%")

Exercícios relacionados