Um cinema que possui capacidade de 20 lugares está sempre lotado. Certo dia cada espectador respondeu a um questionário, onde constava:
  • sua idade;
  • sua opinião em relação ao filme, que podia ser: ótimo, bom, regular, ruim ou péssimo.
    Elabore um programa que, recebendo estes dados calcule e mostre:
    a média de idade das pessoas que responderam ruim;

Passo 1

Beleza, o enunciado diz o seguinte: temos um cinema com 20 lugares sempre lotados e, pra cada pessoa, a gente pega dois dados – a idade e a opinião (que pode ser “ótimo”, “bom”, “regular”, “ruim” ou “péssimo”). O que precisamos fazer é escrever um programa que, a partir desses 20 pares (idade, opinião), calcule a média de idade só da galera que respondeu “ruim”.
Conteúdo da matéria:
  • Média aritmética (como calcular);
  • Uso de estruturas de repetição (pra ler 20 dados);
  • Uso de variáveis acumuladoras e de contagem;
  • Estrutura condicional (pra filtrar quem respondeu “ruim”).

Passo 2

Antes de mais nada, vamos relembrar como funciona a média aritmética. Se você tem um conjunto de barx ;=; x1 + x2 + cdots + xnn números baridade ;=; SN , a média é dada por:
No nosso caso, os “ ” são as idades das pessoas que disseram “ruim”. Vamos chamar:
  • = soma de todas as idades desses “ruim”,
  • = quantidade de pessoas que disseram “ruim”.
    Logo a média vai ser

Passo 3

Agora o esquema geral do programa:
  1. Inicializa duas variáveis:
    • S = 0 (vai acumular idades),
    • N = 0 (vai contar quantas “ruim” rolou).
  2. Faz um laço de repetição que roda 20 vezes (uma pra cada espectador).
  3. Em cada iteração, lê idade e opiniao.
  4. Se opiniao for "ruim", atualiza:
    • S = S + idade
    • N = N + 1

Passo 4

Depois de ler os 20 dados, a gente vai ter em S a soma das idades só dos “ruim” e em N quantas pessoas deram essa opinião.
Antes de calcular, vale checar se N > 0 (pra não dividir por zero).
Se tudo certo, calcula a média:
baridade = SN

Passo 5

Por fim, exibe o resultado na tela dizendo algo como:
“ A média de idade quem respondeu ‘ruim’ é: anos. ”

Resposta

Exemplo de pseudocódigo usando o que vimos:
S ← 0
N ← 0

para i de 1 até 20 faça
    leia idade, opiniao
    se opiniao = "ruim" então
        S ← S + idade
        N ← N + 1
    fim se
fim para

se N > 0 então
    media ← S / N
    escreva "Média de idade (ruim): ", media, " anos."
senão
    escreva "Ninguém respondeu 'ruim'."
fim se
Fórmula final:
baridade = SN

Exercícios relacionados