Em uma oficina de introdução à programação, uma turma utiliza a linguagem Python para criar um programa de…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em uma oficina de introdução à programação, uma turma utiliza a linguagem Python para criar um programa de conferência de senhas numeradas. O programa deve exibir, em linhas separadas e na ordem crescente, todos os números inteiros de 1 a 10, incluindo os dois limites. Para isso, será usada uma estrutura de repetição com a função range(início, fim), cujo segundo valor indica o limite final exclusivo. Com base no texto, qual trecho de código em Python realiza exatamente a tarefa solicitada?
- A) for i in range(1, 11): print(i)
- B) for i in range(1, 11): print(i + 1)
- C) for i in range(10): print(i)
- D) for i in range(1, 10): print(i)
- E) for i in range(1, 11, 2): print(i)
✅ Resposta correta: alternativa A
Resolução passo a passo
- A tarefa pede que sejam exibidos, em linhas separadas e em ordem crescente, todos os inteiros de 1 a 10, incluindo os dois limites.
- O enunciado informa que o segundo valor de range(início, fim) é exclusivo. Para incluir o 10, o segundo argumento precisa ser 11, ou seja, range(1, 11).
- Com range(1, 11), a variável i assume os valores 1, 2, 3, ..., 10, e print(i) exibe cada um em uma linha separada, em ordem crescente. Logo, a alternativa A realiza exatamente a tarefa.
- A alternativa B está errada porque imprime i + 1, valores de 2 a 11, e não os números de 1 a 10.
- A alternativa C está errada porque range(10) começa em 0 e termina em 9, imprimindo 0 a 9.
- A alternativa D está errada porque range(1, 10) termina em 9, excluindo o 10.
- A alternativa E está errada porque o passo 2 faria a impressão pular números, exibindo apenas 1, 3, 5, 7 e 9.
- O gabarito oficial A está correto.
💡 Dica: Pense na sintaxe da estrutura de repetição que você aprendeu.
Alternativa por alternativa
Em Python, range(1, 11) gera os valores de 1 a 10, pois o limite final, 11, não é incluído. A estrutura for percorre cada valor, e print(i) exibe os números em linhas separadas, atendendo integralmente ao que foi solicitado.
O aluno acredita que somar 1 ao valor impresso ajusta a sequência, ignorando que o intervalo já começa em 1 e termina em 10 e que a impressão deveria ser do próprio i.
Por que engana: O aluno pode confundir a estrutura de repetição correta com uma condição de controle, como o 'if', que não executa repetidamente um bloco de código.
O aluno esquece que range(10) começa em 0 por padrão e não em 1, e assim imprime de 0 a 9.
O aluno aplica a regra do limite exclusivo de forma errada, pensando que o 10 não deve aparecer e subtraindo 1 do limite final, sem perceber que o limite exclusivo exige 11 para incluir o 10.
O aluno confunde o terceiro argumento de range, que é o passo entre valores, com uma condição de inclusão, e acredita que ele apenas seleciona números, produzindo 1, 3, 5, 7 e 9.
Raio-X da questão
estrutura de repetição
avaliacao
estrutura de repetição · variáveis em programação
Revisar as estruturas de repetição na linguagem de programação estudada.
O aluno pode confundir a estrutura de repetição correta com uma condição de controle, como o 'if', que não executa repetidamente um bloco de código.
ciencia_tecnologia
tomada_decisao
abstrato
Questões parecidas com resolução
- Um sistema portátil registra a corrente gerada em um eletrodo de trabalho durante um pulso de 4 segundos. Para comparar…
- Em um protótipo computacional que monitora a salinidade de um tanque, dois eletrodos ficam imersos na água e são usados…
- Em uma lavanderia, uma pessoa instala dois eletrodos próximos ao piso, ligados a uma entrada digital de um controlador…
- Em uma demonstração de interface cérebro-computador, eletrodos colocados sobre o couro cabeludo captam sinais elétricos…
- Em um protótipo de interface computacional controlada por sinais musculares, cada canal utiliza um eletrodo para captar…
- Em uma prótese controlada por sinais musculares, eletrodos na pele captam a atividade elétrica e a enviam ao sistema…
🔎 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
