Questão nº 46

Questão de Análise de Sistemas · CESGRANRIO BNDES 01/2024 (nº 46)

CESGRANRIO2024Analista - Análise de Sistemas (Desenvolvimento)Análise de Sistemas
Gabarito: Ever comentário ↓

Considere o seguinte código Python 3:

```python
x = {'f': 1, 'g': 2, 'h': 1, 'i': 2, 'j': 3}
x = list(x.values())
x = set(x)
x = sorted(x)
print(x)
```

Qual será o valor impresso pelo código?

Resposta comentada

Gabarito Alternativa E

Conceito-chave: O código transforma o dicionário em uma lista de valores, depois em um conjunto (que remove duplicatas e não tem ordem), e por fim em uma lista ordenada com sorted(). O resultado são os valores únicos do dicionário, em ordem crescente.

  • (A) Incorreta: ['f', 'g', 'h', 'i', 'j'] seriam as chaves do dicionário, mas o código usa x.values(), que extrai apenas os valores 1, 2, 1, 2, 3.
  • (B) Incorreta: ['1', '1', '2', '2', '3'] são strings, mas os valores originais são inteiros (int), e o set remove as duplicatas, então não haveria repetição de 1 e 2.
  • (C) Incorreta: ['f', 'g', 'h'] mistura chaves com valores e ignora a transformação para números.
  • (D) Incorreta: [1, 2, 1, 2, 3] mantém as duplicatas, mas o set(x) elimina repetições, então sobrariam apenas {1, 2, 3}.
  • (E) Correta: [1, 2, 3] — após list(x.values()) temos [1, 2, 1, 2, 3]; o set remove duplicatas → {1, 2, 3}; o sorted ordena → [1, 2, 3]. A armadilha é esquecer que set elimina repetições, levando a achar que a ordem ou as duplicatas permanecem.

Fonte: CESGRANRIO BNDES 01/2024 Analista - Análise de Sistemas (Desenvolvimento) (Caderno Prova 3). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho