← Questões de Programação

Programação · FGV · 2021

Questão comentada de Programação

Considere o código Python 2.7 a seguir. L=[6,5,4,3,2,1] for k in range(-3,3): print L[k] A execução desse código exibe os números:

Gabarito: C

Em Python, listas aceitam indice negativo. O -1 aponta para o ultimo elemento, o -2 para o penultimo, e assim por diante. No caso da lista L = [6,5,4,3,2,1], isso significa que L[-1] = 1, L[-2] = 2 e L[-3] = 3. O comando range(-3,3) gera a sequencia -3, -2, -1, 0, 1, 2. Ou seja, o laço vai imprimir seis valores, sempre pegando o elemento da lista correspondente a cada indice. Em Python 2.7, o print aparece sem parenteses, mas a logica da indexacao é a mesma. Fazendo a leitura na ordem: L[-3] = 3, L[-2] = 2, L[-1] = 1, L[0] = 6, L[1] = 5 e L[2] = 4. Portanto, a saida exibida é 3 2 1 6 5 4. A alternativa C esta correta porque combina exatamente a regra dos indices negativos com a sequencia produzida por range(-3,3). A questao é classica de indice em lista: a banca testa se voce sabe que a contagem negativa anda de tras para frente, sem segredo e sem magia.

Continue treinando

Questões relacionadas