Computação Múltipla Escolha

Qual o principal problema técnico no código apresentado?

Qual o principal problema técnico no código apresentado?

  1. A lógica dos descontos está incorreta.
  2. O operador de seleção (switch) não está sendo utilizado corretamente.
  3. A variável 'total' declarada internamente não é acessível externamente.
  4. A entrada de dados do usuário não está sendo validada.
  5. A formatação da saída (cout) está inadequada.

Resolução completa

Explicação passo a passo

C
Alternativa C

Alternativa C

Análise do Código:

O programa apresentado tem como objetivo calcular o preço final de uma compra considerando descontos progressivos baseados na quantidade comprada.

Lógica de Descontos:
O enunciado define as seguintes regras para o cálculo do desconto:

  • Quantidade \le 10: Sem desconto.
  • $11 \le$ Quantidade \le 25: Desconto de 4%.
  • $26 \le$ Quantidade \le 50: Desconto de 7%.
  • Quantidade > 50: Desconto de 10%.

No código, os multiplicadores utilizados estão corretos para aplicar esses descontos:

  • Para 4% de desconto: multiplica-se por $0,96$ ($1 - 0,04$).
  • Para 7% de desconto: multiplica-se por $0,93$ ($1 - 0,07$).
  • Para 10% de desconto: multiplica-se por $0,90$ ($1 - 0,10$).

Análise do Erro Técnico

Apesar da lógica matemática estar correta, existe um erro fundamental de escopo de variáveis que impede o programa de compilar ou funcionar conforme esperado no bloco principal (main).

  • Declaração Local: A variável total é declarada dentro da função calculaPreco como double total;. Isso significa que ela só existe enquanto essa função estiver ativa.
  • Acesso Inválido: Na função main, após chamar calculaPreco, o código tenta acessar e exibir a variável total na linha: cout << "Total a pagar: R$ " << total;.
  • Consequência: Como total não foi passada de volta para main (nem por retorno, nem por referência), o compilador gerará um erro indicando que total está indisponível no escopo atual.

Portanto, a alternativa correta aponta que a variável declarada internamente não é acessível externamente.

Alternativa C.

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Computação

Ver mais Computação resolvidas

Tem outra questão de Computação?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.