Buscar

ATIVIDADE AVALIATIVA SEM3 Algoritmos e Programação de Computadores II - NOTA 10

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

PERGUNTA 1 
1. Considere o seguinte programa em Python: 
2. def func(n): 
3. if n <= 1: 
4. return 1 
5. else: 
6. return n * func(n - 1) 
7. 
print(func(4)) 
 
Assinale a alternativa correta: 
 
a. O programa irá retornar 1. 
 
b. O programa vai entrar em loop infinito. 
 
c. O programa irá retornar 4. 
 
d. O programa possui um ou mais erros e não vai executar. 
 
e. O programa irá retornar o fatorial de 4. 
 
PERGUNTA 2 
1. Considere o seguinte programa em Python: 
2. def f(v, i): 
3. if i == 0: 
4. return v[i] 
5. else: 
6. return max(v[i], f(v, i - 1)) 
7. 
8. l = [5,4,6,8,1,2] 
print(f(l, len(l) - 1)) 
Assinale a alternativa correta: 
 
a. O programa irá imprimir 5. 
 
b. O programa irá imprimir 4. 
 
c. O programa irá imprimir 6. 
 
d. O programa irá imprimir 8. 
 
e. O programa irá imprimir 1. 
 
PERGUNTA 3 
1. Sobre funções recursivas, assinale V ou F para as alternativas: 
 
( ) Uma função recursiva deve sempre ter um critério de parada. 
( ) Uma função recursiva sempre será mais rápida que uma função não recursiva. 
( ) Função recursiva é aquela que chama um método implementado em outra classe. 
( ) Funções recursivas são úteis para resolver problemas cuja definição é também recursiva. 
 
a. F-F-F-F 
 
b. V-V-F-F 
 
c. V-V-V-V 
 
d. V-F-F-V 
 
e. F-F-V-V 
 
 
 
 
 
 
 
PERGUNTA 4 
1. Considere o seguinte programa em Python: 
2. def f(v, i): 
3. if i == 0: 
4. return v[i] 
5. else: 
6. return v[i] + f(v, i - 1) 
7. 
8. l = [5,4,6,8,1,2] 
print(f(l, len(l) - 1)) 
Assinale a alternativa correta: 
 
a. O programa irá imprimir 26. 
 
b. O programa irá imprimir 25. 
 
c. O programa irá imprimir 8. 
 
d. O programa irá imprimir 1. 
 
e. O programa irá imprimir 5. 
 
PERGUNTA 5 
1. Considere o seguinte programa em Python: 
2. def f(v, i): 
3. if i == 0: 
4. return v[i] 
5. else: 
6. return min(v[i], f(v, i - 1)) 
7. 
8. l = [5,4,6,8,10,12] 
print(f(l, len(l) - 1)) 
Assinale a alternativa correta: 
 
a. O programa irá imprimir 5. 
 
b. O programa irá imprimir 0. 
 
c. O programa irá imprimir 12. 
 
d. O programa irá imprimir 1. 
 
e. O programa irá imprimir 4. 
 
PERGUNTA 6 
1. Considere o seguinte programa em Python: 
2. def f(v, i): 
3. if i == 0: 
4. return i 
5. else: 
6. j = f(v, i - 1) 
7. if v[i] > v[j]: 
8. return i 
9. else: 
10. return j 
11. 
12. l = [5,4,6,8,1,12] 
print(f(l, len(l) - 1)) 
Assinale a alternativa correta: 
 
a. O programa irá imprimir 0. 
 
b. O programa irá imprimir 6. 
 
c. O programa irá imprimir 1. 
 
d. O programa irá imprimir 5. 
 
e. O programa irá imprimir 12. 
 
PERGUNTA 7 
1. Considere as seguintes afirmativas em relação à recursão: 
 
I. A técnica de memoização tem como objetivo evitar chamadas repetidas a funções recursivas custosas. 
II. Uma função recursiva com memoização sempre executará mais rápido que sua respectiva função não recursiva. 
III. A técnica de memoização consome mais memória. 
 
Quais afirmativas estão corretas? 
 
a. Apenas I. 
 
b. I e II. 
 
c. I e III. 
 
d. Apenas II. 
 
e. Apenas III. 
PERGUNTA 8 
1. Considere o seguinte programa em Python: 
2. def f(n): 
3. if n < 2: 
4. return n 
5. else: 
6. return f(n-1) + f(n-2) 
7. 
print(f(6)) 
Assinale a alternativa correta: 
 
a. O programa irá imprimir 13. 
 
b. O programa irá imprimir 8. 
 
c. O programa irá imprimir 6. 
 
d. O programa irá imprimir 2. 
 
e. O programa irá imprimir 5.

Outros materiais