Questão 21 · Informática: Programação e algoritmos
Analise o código Python a seguir.
S=0 C=1 while C < 7:
D=4 while D > 0:
S=S+C+D D=D-1 C=C+1 print S O código que produz resultado idêntico ao que é produzido pelo código acima é:
- A) S=0 for C in range(1,6): for D in range(4,1,-1): S=S+C+D print S
- B) S=0 for C in range(1,6,1): for D in range(4,1,-1): S=S+C+D print S
- C) S=0 for C in range(1,7): for D in range(4,0): S=S+C+D print S
- D) S=0 for C in range(1,7): for D in range(4,0,-1): S=S+C+D print S
- E) S=0 for C in range(0,6): for D in range(4,1,-1): S=S+C+D print S
Marque a alternativa correta:
Gabarito: D
Gabarito definitivo divulgado pela banca FGV (PGE/RO 2015).
Comentário
Gabarito: D.
Com a indentação restaurada, o código original é: C começa em 1 e o laço externo roda enquanto C < 7, ou seja, para C = 1 a 6. Para cada C, D começa em 4 e o laço interno roda com D = 4, 3, 2, 1, somando C + D a S. Conta: para cada C, a soma interna é (C+4)+(C+3)+(C+2)+(C+1) = 4C + 10. Somando de C = 1 a 6: 4(21) + 60 = 144.
A alternativa D usa range(1,7), que dá C = 1 a 6, e range(4,0,-1), que dá D = 4, 3, 2, 1. Produz o mesmo resultado, 144.
- A: range(1,6) omite C = 6 e range(4,1,-1) omite D = 1.
- B: range(1,6,1) omite C = 6 e range(4,1,-1) omite D = 1.
- C: range(4,0) é vazio, então S permanece 0.
- E: range(0,6) inclui C = 0 e range(4,1,-1) omite D = 1.
Dica de prova: confira os limites de range, que excluem o último valor, e lembre que o laço while com C < 7 equivale a range(1,7).
Fundamentos: Estruturas de repetição while e for · Equivalência entre while com contador e range em Python · Função range: início inclusivo, fim exclusivo e passo
Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.
Fonte: prova FGV PGE/RO 2015 (Analista de Sistemas (Negócios, Suporte e Microinformática)), questão 21, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.