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;
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:
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
números
, 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:
- Inicializa duas variáveis:
S = 0
(vai acumular idades),N = 0
(vai contar quantas “ruim” rolou).
- Faz um laço de repetição que roda 20 vezes (uma pra cada espectador).
- Em cada iteração, lê
idade
eopiniao
. - Se
opiniao
for"ruim"
, atualiza:S = S + idade
N = N + 1
Passo 4
Depois de ler os 20 dados, a gente vai ter em
Antes de calcular, vale checar se
Se tudo certo, calcula a média:
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:
Passo 5
Por fim, exibe o resultado na tela dizendo algo como:
“ A média de idade quem respondeu ‘ruim’ é: anos. ”
“ A média de idade quem respondeu ‘ruim’ é:
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: