Pular para o conteúdo principal

Questão de Algoritmos e Estrutura de Dados — Algoritmos — FCC 2018

Algoritmos e Estrutura de DadosAlgoritmos
Código
fc047863
Banca
FCC
Órgão
SABESP
Ano
2018
Cargo
Estagiário - Nível Médio
Considere, por hipótese, que a SABESP utiliza diferentes preços de tarifas para os serviços de abastecimento de água e/ou coleta de esgoto para o município de São Paulo. Para a categoria Residencial/Favela as tarifas são:Consumo Valor da Tarifa0 a 10 6,25/mês11 a 20 0,71/m321 a 30 2,36/m³31 a 50 7,14/m³acima de 50 7,89/m³Foi solicitado a um estagiário propor a lógica de programação para a solução do seguinte problema: ler o valor do consumo de um usuário da categoria Residencial/Favela (variável consumo) e calcular o valor a pagar com base nas tarifas (variável valor).O Estagiário sugeriu utilizar
  1. Ao tipo básico inteiro para ambas as variáveis.
  2. Bo tipo básico caracter para consumo e o tipo básico inteiro para valor.
  3. Ca instrução leia para ler o valor que o usuário deverá pagar.
  4. Das instruções se então senão de forma aninhada para avaliar as diferentes faixas de consumo.
  5. Ea instrução escolha caso para avaliar os diferentes tipos de valor que poderão ser pagos pelo usuário.
Revelar gabarito e comentário

GabaritoD — as instruções se então senão de forma aninhada para avaliar as diferentes faixas de consumo.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Algoritmos: estruturas de seleção para faixas de valores

Gabarito: letra D. Para calcular o valor a pagar com base em faixas de consumo (intervalos contínuos), a estrutura adequada é o SE-ENTÃO-SENÃO aninhado (if-else if). As alternativas que sugerem tipos de dados incompatíveis (A, B), função de leitura para saída (C) ou estrutura escolha-caso para faixas (E) estão incorretas.

A questão testa o conhecimento de tipos de dados e estruturas de controle. O problema: ler o consumo (número real) e calcular o valor a pagar (também real, pois as tarifas incluem centavos). As faixas de consumo são intervalos contínuos, não valores discretos.

Alternativa A — ❌ Incorreta

Sugere usar tipo inteiro para ambas as variáveis. O consumo pode ser um valor não inteiro (ex.: 15,5 m³) e, principalmente, o valor a pagar é monetário (ex.: R$ 6,25), exigindo tipo real (ponto flutuante).

Alternativa B — ❌ Incorreta

Propõe tipo caracter para consumo e inteiro para valor. Consumo é numérico, não textual; valor, como dito, exige tipo real.

Alternativa C — ❌ Incorreta

Afirma usar a instrução leia para ler o valor que o usuário deverá pagar. leia é para entrada de dados; o programa deve ler o consumo e calcular o valor a pagar. Além disso, o valor a pagar é a saída, não a entrada.

Alternativa D — ✅ Correta ⟵ GABARITO

As faixas de consumo são intervalos (0-10, 11-20, 21-30, 31-50, acima de 50). Para verificar em qual faixa o consumo se encaixa, a estrutura SE-ENTÃO-SENÃO aninhada (ou sequência de if-else if) é a mais indicada, pois permite testar condições encadeadas.

PEGA ESSA DICA!

Lembre-se: intervalos contínuos → if-else aninhado; valores discretos (como menu de opções) → escolha-caso (switch).

Alternativa E — ❌ Incorreta

A instrução escolha caso (switch-case) é projetada para valores exatos e discretos, não para intervalos. Por exemplo, não é possível escrever caso 11..20 de forma direta na maioria das linguagens sem truques. Portanto, inadequada para o problema.

Gabarito: letra D.

Link permanente: /questoes/fc047863