[5,0] Seja uma matriz com n linhas que deve conter dados a respeito de n indivíduos. Cada linha deve guardar as seguintes informações (nesta sequência): idade, gênero (M ou F), altura (em m), massa (em kg). Criar um programa que leia esses dados e retorne:
  • a quantidade de mulheres adultas;
  • a quantidade de homens com IMC ( \left.\frac{\text { massa }}{\text { altura }}\right) acima de 25 .

Passo 1

O enunciado pede que, dado um conjunto de dados de n indivíduos (uma matriz com n linhas), cada linha contendo, nessa ordem, as informações: idade, gênero (M ou F), altura (em m) e massa (em kg), o programa leia todos esses dados e retorne duas coisas:
  1. A quantidade de mulheres adultas.
  2. A quantidade de homens com IMC acima de 25.
Informações relevantes fornecidas:
  • Cada linha tem exatamente quatro campos: idade, gênero, altura, massa (nessa sequência).
  • O enunciado fornece a fórmula do IMC como \displaystyle \text{IMC}=\frac{\text{massa}}{\text{altura}} (vou usar exatamente essa fórmula porque é a que o enunciado mostrou).
  • Não foi dada explicitamente a definição de “adulta” — vou adotar a convenção usual: adulta significa idade maior ou igual a 18, ou seja \text{idade}\ge 18.
  • Gênero vem como letra M ou F. Tratar diferenças de caixa (maiúscula/minúscula) é recomendável.

Passo 2

Explicando a fórmula do IMC que vamos usar e o que cada coisa significa:
  • \text{massa} é o peso em quilogramas (kg).
  • \text{altura} é a altura em metros (m).
  • A fórmula dada pelo enunciado é
\text{IMC}=\frac{\text{massa}}{\text{altura}}.
Isto significa que para cada indivíduo pegamos o número da massa (por exemplo \,70 kg) e dividimos pelo número da altura (por exemplo \,1{,}75 m). Exemplo numérico rápido: se \text{massa}=70 e \text{altura}=1{,}75, então
\text{IMC}=\frac{70}{1{,}75}=40.
(Observação: normalmente o IMC é \text{massa}/\text{altura}^2, mas aqui seguimos a fórmula que o enunciado forneceu.)

Passo 3

Estratégia algorítmica (explicação passo a passo do que o programa faz):
  1. Ler n (número de linhas/indivíduos).
  2. Inicializar dois contadores em zero:
    • \text{contador\_mulheres} \leftarrow 0
    • \text{contador\_homens\_imc} \leftarrow 0
  3. Para cada linha i de 1 até n:
    a. Ler os quatro campos: \text{idade}, \text{genero}, \text{altura}, \text{massa}.
    b. Normalizar \text{genero} (por exemplo transformar para maiúscula) e validar \text{altura} (ver se \text{altura}>0 para evitar divisão por zero).
    c. Se \text{genero} = \text{`F'} e \text{idade}\ge 18, então incrementar \text{contador\_mulheres}.
    d. Se \text{genero} = \text{`M'}, calcular \text{IMC}=\dfrac{\text{massa}}{\text{altura}}. Se \text{IMC}>25, incrementar \text{contador\_homens\_imc}.
  4. Após o laço, exibir os dois contadores.
Cada passo acima é algo que você consegue fazer em prova explicando as comparações e a divisão — nada de fórmulas complicadas.

Passo 4

Pseudocódigo detalhado (cada variável e número em TeX, para você levar para a prova ou implementar rapidamente):
Ler n
\text{contador\_mulheres} \leftarrow 0
\text{contador\_homens\_imc} \leftarrow 0
Para i de 1 até n faça:
\begin{aligned} &\text{Ler } \text{idade},\\ \text{genero},\\ \text{altura},\\ \text{massa} \\\ &\text{genero} \leftarrow \text{maiuscula}(\text{genero}) \quad\text{(transformar para `M' ou `F')}\\\ &\text{Se } \text{genero} = \text{`F'} \text{ e } \text{idade} \ge 18 \text{ então}\\\ &\qquad \text{contador\_mulheres} \leftarrow \text{contador\_mulheres} + 1 \\\ &\text{Fim se} \\\ &\text{Se } \text{genero} = \text{`M'} \text{ então}\\\ &\qquad \text{Se } \text{altura} \le 0 \text{ então tratar erro (pular ou avisar)} \text{ senão}\\\ &\qquad\qquad \text{IMC} \leftarrow \dfrac{\text{massa}}{\text{altura}} \\\ &\qquad\qquad \text{Se } \text{IMC} > 25 \text{ então}\\\ &\qquad\qquad\qquad \text{contador\_homens\_imc} \leftarrow \text{contador\_homens\_imc} + 1 \\\ &\qquad\qquad\qquad \text{Fim se} \\\ &\qquad\text{Fim se} \\\ &\text{Fim se} \end{aligned}ããããã
Depois do laço imprimir:
\text{Quantidade de mulheres adultas} = \text{contador\_mulheres}
\text{Quantidade de homens com IMC acima de }25 = \text{contador\_homens\_imc}

Passo 5

Exemplo concreto passo a passo (para fixar a ideia):
Suponha n=4 e as linhas (idade, gênero, altura, massa):
  1. 20,\;F,\;1{,}60,\;60
  2. 17,\;F,\;1{,}55,\;50
  3. 30,\;M,\;1{,}80,\;85
  4. 25,\;M,\;1{,}70,\;60
Processamento:
  • Linha 1: \text{genero}=\text{`F'} e \text{idade}=20\ge 18 \text{contador\_mulheres}=1.
  • Linha 2: \text{genero}=\text{`F'} e \text{idade}=17<18 → não conta.
  • Linha 3: \text{genero}=\text{`M'}. Calcular \text{IMC}=\dfrac{85}{1{,}80}\approx 47{,}22. Como 47{,}22>25, \text{contador\_homens\_imc}=1.
  • Linha 4: \text{genero}=\text{`M'}. Calcular \text{IMC}=\dfrac{60}{1{,}70}\approx 35{,}29. Como 35{,}29>25, \text{contador\_homens\_imc}=2.
Resultado final no exemplo: \text{contador\_mulheres}=1 e \text{contador\_homens\_imc}=2.

Passo 6

Dicas finais, erros comuns e cuidado na prova:
  • Verifique sempre \text{altura}>0 antes de dividir para evitar divisão por zero.
  • Trate possíveis espaços ou letras minúsculas no campo \text{genero} (usar função de normalização).
  • Confirme a convenção de “adulta” se o enunciado do professor for diferente de \text{idade}\ge 18.
  • Use comparação estrita \text{IMC}>25 (não incluir igualdade) se o enunciado diz "acima de 25".
  • Se estiver implementando em linguagem de programação, use tipos numéricos em ponto flutuante para \text{altura} e \text{massa} e inteiro para \text{idade}.

Resposta

Quantidade de mulheres adultas: \text{contador\_mulheres}
Quantidade de homens com IMC acima de 25: \text{contador\_homens\_imc}

Exercícios relacionados