GeraProva GeraProva Provas com IA para professores do Brasil
BNCC 17 questões

Questões BNCC EF07CO02

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

Ilustração da habilidade BNCC EF07CO02
Unidade temática
Pensamento Computacional
Objeto de conhecimento
Análise de programas
Questões vinculadas
17
Descrição da habilidade EF07CO02
Analisar programas para detectar e remover erros, ampliando a confiança na sua correção.

Séries

7º ano

Matérias

Computação

Assuntos

Análise de programas

Unidades temáticas relacionadas

Pensamento computacional

Questões relacionadas a EF07CO02

Questão 1 · Objetiva
Em um sistema de vendas, considere uma lista que armazena os produtos vendidos. Qual estrutura de dados é mais adequada para gerenciar esses produtos?
Questão 2 · Objetiva
Um programa apresenta um bug que faz com que não exiba resultados corretos. O que pode ser feito para identificar esse problema?
Questão 3 · Objetiva
— 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.
Questão 4 · Objetiva
— Por que o celular tocou de madrugada se eu deixei o “silêncio automático” ligado? — perguntou uma moradora, depois que o grupo do prédio recebeu um aviso às 23h.

O aplicativo usa a hora (um número de 0 a 23) para decidir se pode tocar som. O combinado era: entre 22h e antes de 7h, o app deve ficar silencioso; nos outros horários, pode tocar.

O programador testou a função abaixo e anotou que ela devolveu FALSO para hora = 23, hora = 6 e hora = 10.

func Silenciar(hora):
se (hora >= 22 e hora < 7)
retornar VERDADEIRO
senao
retornar FALSO

Analise o algoritmo e identifique a mudança na condição que corrige o erro lógico para o modo silencioso funcionar no intervalo combinado.
Questão 5 · Objetiva
— Não deveria parar tão cedo, observou a repórter ao testar o programa que ela mesma escreveu para contar as vogais em suas transcrições. Em cada execução, o resultado final apresentava sempre 1, embora o texto contivesse várias letras 'a'. Ao investigar, ela encontrou este pseudocódigo:

funcao contarA(texto):
total <- 0
para i de 1 ate comprimento(texto):
se texto[i] = 'a' entao
total <- total + 1
fim se
retornar total
fim para

A repórter deseja garantir a confiabilidade do resultado, eliminando qualquer erro que impeça a função de processar todos os caracteres. Ela precisa ajustar o código para que o algoritmo contabilize corretamente todas as ocorrências de 'a' antes de encerrar a função.

Analise o pseudocódigo apresentado e determine qual ajuste corrige o programa para contabilizar corretamente todas as ocorrências da letra 'a' em 'texto' antes de encerrar a função?
Questão 6 · Objetiva
Folhas de caderno e códigos rabiscados se espalham pela mesa de Clara, estudante de informática. Ela tentou fazer um programa em pseudocódigo para calcular a média de altura de cinco colegas. Seu roteiro inicia soma=0 e contador=0, então repete cinco vezes: lê altura, soma = soma + altura, media = soma / contador, contador = contador + 1. Ao testar, o software exibiu erro de divisão por zero e, após ajustes, continuou apresentando resultado estranho. A professora apontou que o local do cálculo de média pode interferir no funcionamento e pediu que Clara analise a posição dessa operação para corrigir o problema.

A partir do texto-base, identifique como deve ser modificada a estrutura do programa para corrigir o erro de divisão por zero e obter a média corretamente.
Questão 7 · Objetiva
Em uma plataforma digital de servicos urbanos, um portal de cidade media calcula a media de consumo de agua por residencia utilizando o seguinte algoritmo descrito em pseudocodigo: soma = 0; para cada leitura na lista: soma = soma + leitura; media = soma / numero de leituras. Durante testes iniciais, o sistema retornou medias corretas para residencias com leituras diarias registradas. Contudo, ao processar casas sem nenhum registro de medicao, o programa travou com a mensagem 'divisao por zero'. Os estudantes passaram a elaborar diversos casos de teste para reproduzir o erro e validar a correcao no codigo.

Identifique o caso de teste que melhor expõe o erro de divisao por zero no programa.
Questão 8 · Objetiva
Na porta de um centro cultural, um programa simples decide se o visitante paga ingresso ou entra de graça. A regra foi escrita assim: visitantes com 12 anos ou menos entram gratuitamente; também entram de graça os professores com carteirinha válida. O código testado foi:

leia idade
leia carteirinha
se (idade <= 12) e (carteirinha = "sim") entao
escreva "Entrada gratuita"
senao
escreva "Ingresso pago"
fimse

Durante a verificação, crianças sem carteirinha passaram a ser cobradas, embora a regra dissesse o contrário. A equipe percebeu que o problema estava na condição do teste.

Analise o trecho e identifique a alteração que corrige o programa para atender à regra descrita no texto-base.

Gere provas alinhadas à habilidade EF07CO02

Monte provas, atividades e planos de aula alinhados à BNCC em segundos com o GeraProva.

Ver planos
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.