GeraProva GeraProva Provas com IA para professores do Brasil
BNCC 26 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
26

Texto oficial da habilidade, conferido palavra por palavra contra a Base Nacional Comum Curricular — BNCC_Computacao.pdf, página 46. Extração confirmada por dois processos independentes.

Descrição da habilidade EF07CO02
Analisar programas para detectar e remover erros, ampliando a confiança na sua correção.
Atividades prontas desta habilidade Atividades sobre Análise de programas com gabarito — 7º ano (EF07CO02) Ler o artigo com gabarito

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 uma apresentação escolar, o programa de luzes deve ativar efeitos nas cinco cenas, numeradas de 1 a 5. O trecho usado é:
para cena de 1 até 6 faça
ativar o efeito da cena
fim para

Qual alteração faz o programa ativar o efeito exatamente uma vez em cada uma das cinco cenas?
Questão 2 · Objetiva
Quando o rio se aproxima das casas, a Defesa Civil de um município usa um programa para avisar os moradores pelo celular. O aviso deve ser enviado se o nível do rio passar de 80 cm ou se houver previsão de chuva forte, pois qualquer uma dessas situações pode aumentar o risco de alagamento.

Durante um teste, havia previsão de chuva forte, mas o nível estava em 65 cm. Nenhuma mensagem foi enviada. O trecho responsável pelo aviso era:

SE (nívelDoRio > 80) E (chuvaForte = "sim")
enviarAviso()
FIMSE

Analise o teste e o trecho do programa. Identifique a alteração que corrige o envio do aviso conforme a regra descrita.
Questão 3 · Objetiva
Por que o painel de alerta do rio não envia aviso mesmo quando o nível sobe em duas medições seguidas? Em uma simulação do sistema municipal, cada leitura recebe o estado “subindo” ou “estável”. A regra é enviar apenas um aviso quando ocorrerem duas leituras consecutivas de “subindo”; um novo aviso só pode ocorrer depois de uma leitura “estável”. O programa usa as variáveis estadoAnterior e avisoEnviado. Nos testes com as sequências “subindo, subindo, subindo” e “subindo, estável, subindo, subindo”, nenhum aviso foi enviado.

para cada estado recebido
se estado = "subindo" e estadoAnterior = "subindo" e avisoEnviado = falso
enviar aviso
avisoEnviado <- verdadeiro
se estado = "estável"
avisoEnviado <- falso
estadoAnterior <- "estável"

Analise o rastreamento do programa e determine a alteração na última atribuição que permite cumprir a regra de aviso nos dois testes.
Questão 4 · Objetiva
— O painel marcou 80%, mas o caminhão não recebeu o aviso de retirada — observou a responsável pelo ponto de coleta de pilhas usadas. O programa do painel deve enviar o aviso quando a caixa estiver com 80% ou mais de sua capacidade. Para testar o funcionamento, foram registrados três níveis: 79%, 80% e 81%.

No programa, a decisão está escrita assim:

SE nível é maior que 80
exibir "Solicitar retirada"
SENÃO
exibir "Aguardar"

Nos testes, o painel exibiu “Aguardar” para 79% e 80%, e “Solicitar retirada” para 81%. A responsável concluiu que a regra do ponto de coleta está sendo aplicada incorretamente em um dos limites previstos.

Analise os testes do programa e identifique a alteração na condição que corrige o aviso sem modificar os demais resultados esperados.
Questão 5 · Objetiva
— A última peça nunca aparece no painel — disse a monitora do centro cultural, ao conferir o inventário digital de objetos encontrados após uma mostra. Para evitar enganos, ela testou o programa com três itens: chave, boné e caderno. O painel exibiu somente chave e boné. No código usado, a primeira posição da lista é 0:

i <- 0
enquanto i < tamanho(itens) - 1 faça
exibir itens[i]
i <- i + 1
fim enquanto

A monitora repetiu o teste com uma lista de quatro itens e observou novamente que apenas os três primeiros foram mostrados. Ela quer ajustar o programa para que cada item existente seja exibido uma única vez, inclusive quando a lista tiver apenas um elemento.

Analise os resultados dos testes e identifique a modificação no laço que elimina o erro de exibição.
Questão 6 · Objetiva
— O quarto depoimento nunca toca no totem da praça — avisou uma moradora ao grupo que organizava áudios sobre a memória do bairro. O sistema deveria apresentar quatro relatos, numerados de 1 a 4, sempre nessa ordem. Durante um teste, o registro mostrou que os áudios 1, 2 e 3 foram reproduzidos, e a tela voltou ao início sem apresentar o último relato. O grupo consultou o trecho responsável pela sequência:

sala <- 1

enquanto sala < 4 faça
reproduzir áudio da sala
sala <- sala + 1
fim enquanto

Antes de publicar o conteúdo, os estudantes decidiram corrigir o trecho e repetir o teste com os quatro relatos, para confirmar que todos seriam apresentados uma única vez.

Analise o trecho e os resultados do teste. Determine a alteração que corrige o erro sem incluir um relato inexistente nem repetir áudios.
Questão 7 · Objetiva
— Devolvi o livro um dia depois e o aplicativo disse que eu estava “no prazo”! — reclamou um usuário da biblioteca do bairro.

A biblioteca usa um programa simples para orientar o atendimento. A regra informada no balcão é: se o livro tiver pelo menos 1 dia de atraso, o sistema deve mostrar “Atrasado” e impedir a renovação.

Ao revisar o programa, a funcionária encontrou este trecho:

se dias_atraso > 1
status <- "Atrasado"
pode_renovar <- falso
senao
status <- "No prazo"
pode_renovar <- verdadeiro

Nos testes, com dias_atraso = 0 funcionou; com dias_atraso = 1 apareceu “No prazo”; com dias_atraso = 2 apareceu “Atrasado”.

Com base na regra da biblioteca e no trecho do programa, identifique a mudança no teste da condição que corrige o erro para qualquer atraso.
Questão 8 · Objetiva
— Por que a bilheteria está cobrando “inteira” de crianças? — perguntou a atendente, ao testar um programinha que classifica o tipo de ingresso no cinema do bairro.

A regra divulgada no balcão é: pessoas com idade menor que 12 anos ou maior ou igual a 60 pagam meia. O programa foi escrito assim:

ler idade
se (idade < 12 e idade >= 60) então
mostrar "meia"
senão
mostrar "inteira"

Nos testes, ao digitar 10, apareceu “inteira”. Ao digitar 65, também apareceu “inteira”. Para 30, apareceu “inteira”, como esperado. A atendente quer corrigir o erro com a menor mudança possível no código, sem alterar a regra do cinema.

Analise a regra e os resultados dos testes e identifique a alteração no programa que corrige o erro, ampliando a confiança de que ele classifica o ingresso corretamente.

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.