GeraProva GeraProva Provas com IA para professores do Brasil
Computação6º anoBNCC EF69CO01Média⏱ curto

Ao projetar um registro 'produto' com campo 'preco' para cálculos financeiros, qual tipo de dado reduz erros…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF69CO01

Classificar informações, agrupando-as em coleções (conjuntos) e associando cada coleção a um ‘tipo de dado’.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

Ao projetar um registro 'produto' com campo 'preco' para cálculos financeiros, qual tipo de dado reduz erros de precisão: ponto flutuante ou inteiro (em centavos)?

  1. A) Inteiro normal (sem centavos)
  2. B) String
  3. C) Decimal com casas variáveis
  4. D) Inteiro em centavos
  5. E) Ponto flutuante

✅ Resposta correta: alternativa D

Resolução passo a passo

  1. Resolvendo por conta própria, o ponto flutuante (E) armazena números em base binária, e muitos valores decimais, como 0,1, não têm representação exata. Por isso, somas como 0,1 + 0,2 podem resultar em 0,30000000000000004 e os erros se acumulam em cálculos financeiros repetidos. Passo 2: Guardar o preço em centavos como inteiro (D) resolve o problema: R$ 10,50 vira 1050, e somas, subtrações e multiplicações por inteiros são exatas dentro da faixa de valores suportada. A conversão para reais é feita só na exibição. Passo 3: A alternativa A está errada porque um inteiro sem centavos não consegue representar R$ 10,50 sem perder a parte fracionária. A alternativa B está errada porque string guarda o texto, mas não permite cálculos aritméticos diretos sem conversão. A alternativa C está errada porque uma representação decimal de casas variáveis não fixa a escala monetária, o que a torna menos previsível do que centavos inteiros ou decimal de escala fixa. Passo 4: Conclusão: a resposta correta é a D, em concordância com o gabarito oficial.

💡 Dica: Considere as características dos tipos de dados em programação.

Alternativa por alternativa

A Erradaerro: Conceitual

Acredita que qualquer número inteiro elimina erros de precisão, sem perceber que descartar os centavos gera perda de valor real.

B Erradaerro: Conceitual

Imagina que guardar o preço como texto é a forma mais segura e legível, ignorando que não há cálculo aritmético direto sobre strings.

C Erradaerro: Conceituala que mais engana

Entende que um tipo decimal, por ser 'decimal', sempre é exato e pode ter número de casas variável, sem perceber que a escala precisa ser fixa para evitar inconsistências monetárias.

Por que engana: Confundir o uso de ponto flutuante com inteiro em centavos, levando a erros de precisão em cálculos financeiros.

D Correta

Representar valores monetários como inteiros (centavos) evita erros de arredondamento e imprecisão típicos de ponto flutuante em operações financeiras.

E Erradaerro: Senso comum

Assume que ponto flutuante é o tipo padrão para números com vírgula e, por isso, é adequado para dinheiro, sem considerar os erros de arredondamento da representação binária.

Raio-X da questão

Dificuldade Média
Bloom Analisar
Leitura medio
Discriminação alto
Peso pedagógico alto
Autonomia do enunciado completo
Cobertura da habilidade unica
🧪 Simulado🩺 Diagnóstico🧮 Exige cálculo🏠 Cotidiano🔗 Interdisciplinar⭐ Representativa✍️ direta🧩 consolidacao
🎯 Conceito central

tipos de dados

📌 Objetivo

avaliacao

🧱 Pré-requisitos

tipos de dados · cálculos financeiros

📚 Reveja

Revisar os tipos de dados e suas aplicações em programação.

⚠️ Erro mais comum

Confundir o uso de ponto flutuante com inteiro em centavos, levando a erros de precisão em cálculos financeiros.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

abstrato

Questões parecidas com resolução

Todas as questões de Programação - Tipos de dados

🔎 Procurar outra questão

Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.

Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog

Ocorreu um erro inesperado. Recarregar X

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.