Questão de Programação — Linguagens de programação — FGV 2023
- Código
- fg067776
- Banca
- FGV
- Órgão
- Receita Federal
- Ano
- 2023
- Nível
- Superior
- Cargo
- Analista-Tributário (manhã)
Assinale o resultado exibido na execução desse código.- A1
- B3
- C6
- D15
- E75
Assinale o resultado exibido na execução desse código.GabaritoD — 15
Gabarito: letra D — a conta chega a 15 — alternativa D.
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.
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
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.
Achar que range(1, 6) inclui o 6, somando até 21 em vez de 15.
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.
De onde vem cada valor: = enunciado: inicializada em 0 · = passo 1: cada valor da sequência
Parar no meio do laço e marcar um valor parcial como 3 ou 6.
Resposta: 15 — alternativa D
Link permanente: /questoes/fg067776