FC ConcursosFC Concursos

Questão FC331184

Considere o código Python a seguir. def F(a, b, c): for k in range(a,b): print k ** c Dado que uma execução da função F exibiu os números 16, 9, 4, 1, 0, 1, é correto afirmar que o

Linguagens de Programação

FGV · 2021

Considere o código Python a seguir.

 

def F(a, b, c):

     for k in range(a,b):

          print k ** c

 

Dado que uma execução da função F exibiu os números

 

16, 9, 4, 1, 0, 1,

 

é correto afirmar que os valores dos parâmetros a, b, c empregados foram, respectivamente:

  1. -4, 1, 2;
  2. -4, 2, 2;
  3. -4, 0, 4;
  4. 4, -1, 1;
  5. 4, 2, 2.
Mostrar resposta e comentário

Gabarito

B

Comentário do professor

A alternativa correta usa a = -4, b = 2 e c = 2. Em Python, a função range(start, stop) gera valores de start até stop - 1, com passo padrão 1.

Logo, range(-4, 2) produz a sequência: -4, -3, -2, -1, 0, 1. Cada valor é atribuído a k no laço.

O operador ** é exponenciação; com c = 2 calcula-se \(k^2\) para cada k. Aplicando aos termos, obtemos: \( (-4)^2 = 16,\; (-3)^2 = 9,\; (-2)^2 = 4,\; (-1)^2 = 1,\; 0^2 = 0,\; 1^2 = 1.\)

Portanto, a chamada F(-4, 2, 2) imprime exatamente a sequência 16, 9, 4, 1, 0, 1, coincidindo com o enunciado.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo