GeraProva GeraProva Provas com IA para professores do Brasil
Computação7º anoBNCC EF07CO02Fácil⏱ medio

— Tenho 10 selos no cartão. Já posso usar o desconto? — perguntou uma cliente na padaria do bairro. Para…

Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva

Habilidade BNCC EF07CO02

Analisar programas para detectar e remover erros, ampliando a confiança na sua correção.

Fonte: Base Nacional Comum Curricular (MEC).

Questão

— Tenho 10 selos no cartão. Já posso usar o desconto? — perguntou uma cliente na padaria do bairro. Para agilizar o atendimento, o caixa usa um pequeno programa no tablet. A regra combinada é simples: com 10 selos ou mais, o desconto deve ser liberado; com menos de 10, o programa deve informar quantos selos faltam. No entanto, quando a cliente digitou 10, o tablet mostrou “Faltam 0 selos” e não liberou o desconto. O programa é este: ler selos se selos > 10 mostrar "Desconto liberado" senao mostrar "Faltam " + (10 - selos) + " selos" fim Analise o programa do texto e identifique a menor alteração que corrige o erro, fazendo o desconto ser liberado quando a pessoa tiver exatamente 10 selos.

  1. A) Substituir selos > 10 por selos >= 10 na condição do se
  2. B) Substituir a mensagem "Desconto liberado" por "Faltam 0 selos" no bloco verdadeiro
  3. C) Substituir (10 - selos) por (selos - 10) na linha que calcula os selos
  4. D) Substituir o senao por fim, removendo o bloco que mostra quantos selos faltam
  5. E) Substituir o comando ler selos por mostrar selos no início do programa

✅ Resposta correta: alternativa A

Resolução passo a passo

  1. A regra combinada é que, com 10 selos ou mais, o desconto deve ser liberado. O programa testa a condição selos > 10, que é verdadeira apenas para 11 selos ou mais. Com exatamente 10 selos, a condição é falsa e o programa executa o senão, mostrando "Faltam 0 selos", exatamente o erro relatado.
  2. Para corrigir com a menor alteração, basta trocar o operador de comparação para maior ou igual: selos >= 10. Assim, com 10 selos a condição fica verdadeira e o desconto é liberado, enquanto com menos de 10 o comportamento continua o mesmo.
  3. Por que as outras alternativas estão erradas:
  4. B) Trocar o texto da mensagem não altera a decisão do programa; com 10 selos o desconto continuaria bloqueado.
  5. C) Calcular selos - 10 não corrige a condição e geraria valores negativos ou incorretos na mensagem de faltantes.
  6. D) Remover o bloco senão eliminaria a informação de quantos selos faltam, o que contraria a regra, e não liberaria o desconto com 10 selos.
  7. E) Mostrar o valor de selos no início não muda a condição de liberação do desconto, então o erro permaneceria.
  8. Conclusão: a alteração correta é a letra A, pois corrige a fronteira do critério (o limite 10 deve ser incluído) com uma única mudança mínima.

💡 Dica: Analise a condição do 'se' para incluir o caso de 10 selos.

Alternativa por alternativa

A Correta

Com 10 selos, a condição precisa ser verdadeira; trocar > por >= inclui o caso selos = 10 e libera o desconto.

B Erradaerro: Conceituala que mais engana

O aluno acredita que o problema está na mensagem exibida, achando que trocar o texto mudaria o resultado da condição.

Por que engana: Confundir o operador '>' com '>=' e não considerar o caso limite na condição.

C Erradaerro: Procedimental

O aluno inverte a subtração, imaginando que a fórmula da mensagem é o que impede a liberação, sem perceber que o problema está na condição do se.

D Erradaerro: Conceitual

O aluno pensa que remover o senão resolveria o caso, sem notar que o desconto só seria liberado pela condição do se, que continuaria falsa para 10 selos.

E Erradaerro: Conceitual

O aluno acredita que mostrar a quantidade de selos muda a lógica do programa, confundindo exibição de dados com a decisão feita pela condição.

Raio-X da questão

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

condicional lógica em programação

📌 Objetivo

avaliacao

🧱 Pré-requisitos

estruturas condicionais básicas · operadores relacionais

📚 Reveja

Estude estruturas condicionais e operadores relacionais em programação.

⚠️ Erro mais comum

Confundir o operador '>' com '>=' e não considerar o caso limite na condição.

🌎 Tema transversal

ciencia_tecnologia

🤝 Socioemocional

pensamento_critico

🏫 Contexto

cotidiano

Questões parecidas com resolução

Todas as questões de Análise de programas

🔎 Resolver outra questão

Cole o enunciado e veja a resolução passo a passo, a alternativa correta e por que as outras estão erradas.

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.