Pular para o conteúdo

Fundação VUNESP · Exército Brasileiro — Escola de Saúde e Formação Complementar do Exército (ESFC… 2022

Questão 44 — Linguagens de Programação: Python — Listas e Estruturas de Repetição

Linguagens de Programação Python — Listas e Estruturas de Repetição

Fundação VUNESP 2022

Exército Brasileiro — Escola de Saúde e Formação Complementar do Exército (ESFCEx) · Oficial do Quadro Complementar do Exército · Caderno 008. Prova Objetiva — Modelo de prova (Versão) A

Gabarito disponível

Considere o seguinte fragmento de código escrito na linguagem Python 3.x:
x = []
for i in range(1,11,3):
x.append(10-i)
if x % 2 != 0:
x.sort()
print(x)
O conteúdo da lista x que será impresso na última linha de código é
Selecione uma alternativa

Resolução comentada

Os valores 9, 6, 3 e 0 são adicionados à lista, e o sort ocorre quando o último elemento é ímpar, resultando em [3, 6, 9, 0].

O range(1,11,3) gera 1, 4, 7 e 10, e os valores adicionados são 9, 6, 3 e 0. Como escrito, `x % 2` sobre uma lista daria TypeError; a questão evidentemente quer testar o último elemento adicionado. Sob essa leitura, 9 (ímpar) ordena a lista para [9], 6 (par) não ordena e fica [9,6], 3 (ímpar) ordena para [3,6,9], e 0 (par) não ordena e fica [3,6,9,0].

Análise das alternativas

A, C, D e E apresentam ordens que não surgem dessa sequência de ordenações condicionais. A C, [0,3,6,9], só ocorreria se o sort rodasse após inserir o 0.

Referência: Python 3: list.append, list.sort e range.

Resolução comentada do VaiConcursos.

Ver gabarito

Gabarito: B

Fonte: Gabarito preliminar: Gabarito — 008. Prova Objetiva — Informática — Versão A (página 22)