Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FGV 2023

ProgramaçãoLinguagens de programação
Código
fg067776
Banca
FGV
Órgão
Receita Federal
Ano
2023
Nível
Superior
Cargo
Analista-Tributário (manhã)
Analise o código Python a seguir.66.png 177×94Assinale o resultado exibido na execução desse código.
  1. A1
  2. B3
  3. C6
  4. D15
  5. E75
Revelar gabarito e comentário

GabaritoD — 15

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Resolução

Gabarito: letra D — a conta chega a 15 — alternativa D.

A ideia por trás

Em Python, o laço for percorre uma sequência de valores, executando um bloco de código para cada um deles. A função range(início, fim) gera uma sequência de números inteiros que começa em início e vai até fim - 1, ou seja, o valor final não é incluído. Essa é a base da iteração em Python.

A cada iteração do laço, a variável de controle recebe o próximo valor da sequência, e o bloco é executado. No código, a variável soma acumula os valores: soma = soma + i. Como soma começa em 0, ao final ela contém a soma de todos os números da sequência. A função range(1, 6) gera 1, 2, 3, 4, 5 — o 6 fica de fora, pois o limite superior é exclusivo.

Esta questão cobra exatamente o entendimento do range: saber que o último número não entra na sequência e que o laço acumula os valores na variável soma. O erro clássico é incluir o 6 na soma.

O que a questão dá

  • código Python com laço for e range(1, 6)

  • variável soma inicializada em 0

O que queremos: o valor exibido pelo print(soma) ao final do laço

Passo 1 — Entender o que range(1, 6) gera

Antes de somar, precisamos saber quais números o laço vai percorrer. A função range(início, fim) gera números de início até fim - 1, então range(1, 6) produz 1, 2, 3, 4, 5. O 6 não entra.

seque^ncia:1,2,3,4,5\boxed{\text{sequ}ê\text{ncia}: 1, 2, 3, 4, 5}
NÃO CAIA NESSA!

Achar que range(1, 6) inclui o 6, somando até 21 em vez de 15.

Passo 2 — Percorrer o laço e acumular a soma

Agora que sabemos os números, precisamos executar o laço mentalmente. A cada iteração, o valor de i é somado à variável soma, que começa em 0. Vamos acompanhar: i=1 → soma=1; i=2 → soma=3; i=3 → soma=6; i=4 → soma=10; i=5 → soma=15.

Por que esta fórmula: A operação soma = soma + i é a acumulação clássica em programação: a cada passo, o valor atual de i é adicionado ao total anterior.

soma=soma+isoma = soma + i

De onde vem cada valor: somasoma = enunciado: inicializada em 0 · ii = passo 1: cada valor da sequência

soma=0+1=1;depois1+2=3;depois3+3=6;depois6+4=10;depois10+5=15soma = 0 + 1 = 1; depois 1 + 2 = 3; depois 3 + 3 = 6; depois 6 + 4 = 10; depois 10 + 5 = 15
soma=15soma = \boxed{15}
NÃO CAIA NESSA!

Parar no meio do laço e marcar um valor parcial como 3 ou 6.

Resposta: 15 — alternativa D

Link permanente: /questoes/fg067776