Ed
mês passado
Vamos analisar o programa passo a passo: 1. Duas pilhas são criadas: p e q. 2. O loop for i in range(5) insere números em p ou q: - Se i é par (0, 2, 4), insere em p. - Se i é ímpar (1, 3), insere em q. Então: - p = [0, 2, 4] (0 no fundo, 4 no topo) - q = [1, 3] (1 no fundo, 3 no topo) 3. Enquanto p não estiver vazia (while p.empty():), o programa faz q.push(p.pop()): - p.pop() remove o topo de p (último elemento inserido). - q.push() adiciona esse elemento no topo de q. Passo a passo: - p.pop() = 4; q.push(4) → q = [1, 3, 4] - p.pop() = 2; q.push(2) → q = [1, 3, 4, 2] - p.pop() = 0; q.push(0) → q = [1, 3, 4, 2, 0] - p agora está vazia. 4. Enquanto q não estiver vazia (while q.empty():), o programa imprime q.pop(): - q.pop() remove o topo de q e imprime. Passo a passo: - q.pop() = 0 → imprime 0 - q.pop() = 2 → imprime 2 - q.pop() = 4 → imprime 4 - q.pop() = 3 → imprime 3 - q.pop() = 1 → imprime 1 Portanto, a ordem impressa é: 0, 2, 4, 3, 1. Resposta correta: a) Os números 0, 2, 4, 3 e 1.
Cadastre-se ou realize login