Analise o script Python 3.8 exibido a seguir. L=["A","E","...
Analise o script Python 3.8 exibido a seguir.
L=["A","E","I","O","U"]
for k in range(0,len(L)):
print (L[4-k])
Assinale a opção que indica a saída produzida pela execução desse código.
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: E - U O I E A
Vamos entender por que esta é a resposta certa. O script Python apresentado cria uma lista de vogais L = ["A", "E", "I", "O", "U"] e itera sobre ela de maneira inversa, imprimindo seus elementos do último até o primeiro. Isso é feito pelo uso do laço for com a função range e a expressão L[4-k], onde k varia de 0 a len(L) - 1.
A função range(0, len(L)) gera uma sequência de números de 0 até len(L)-1 (neste caso, de 0 a 4), pois len(L) é igual a 5, o tamanho da lista L. O índice usado para acessar os elementos da lista é 4-k. Isso significa que na primeira iteração, quando k é 0, 4-k é 4, acessando assim o último elemento da lista ("U"). Na próxima iteração, k é 1, fazendo com que 4-k seja 3, acessando o penúltimo elemento ("O"), e assim sucessivamente até que k seja 4 e 4-k seja 0, acessando o primeiro elemento da lista ("A").
Dessa forma, a saída do programa será a impressão das vogais em ordem inversa à da lista original. Portanto, o código irá imprimir:
U
O
I
E
A
E essa sequência corresponde exatamente à alternativa E.
O conhecimento necessário para resolver essa questão envolve compreender como laços de repetição funcionam em Python, o uso da função range e como listas são indexadas, bem como a lógica de iteração inversa em uma lista.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
"for k in range(0,len(L)):" -> K terá valores de 0 a 4 (o 5 não é incluído no range)
L[4-0] -> L[4] = U
L[4-1] -> L[3] = O
L[4-2] -> L[2] = I
L[4-3] -> L[1] = E
L[4-4] -> L[0] = A
GAB E
Rapaz, a função len não deveria retornar 5 já que são 5 elementos no array?
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo