BNCC
26 questões
Questões BNCC EF07CO02
Analisar programas para detectar e remover erros, ampliando a confiança na sua correção.
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.
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?
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.
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.
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.
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.
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.
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.
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.
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