Logo Passei Direto
Buscar

[A3] Avaliação do Módulo 3 Algoritmos recursivos_ Revisão da tentativa

Ferramentas de estudo

Passei Direto Aniversário

Quer receber 70% de desconto para assinar o PasseIA?

Questões resolvidas

Em relação aos conceitos de iteratividade e recursividade, escolha uma sentença INCORRETA.
a. A recursão não possui desvantagens, portanto, as soluções recursivas sempre serão a melhor opção para implementar a solução de qualquer algoritmo.
b. Tanto implementações iterativas quanto recursivas são baseadas em uma estrutura de controle.
c. Há várias funções que podem ser resolvidas tanto iterativamente quanto recursivamente.
d. A recursão consegue a repetição por meio de chamadas repetidas.
e. Soluções recursivas criam uma outra cópia da função, o que pode consumir muita memória dependendo da quantidade de chamadas recursivas.
a) Verdadeiro
b) Falso

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Questões resolvidas

Em relação aos conceitos de iteratividade e recursividade, escolha uma sentença INCORRETA.
a. A recursão não possui desvantagens, portanto, as soluções recursivas sempre serão a melhor opção para implementar a solução de qualquer algoritmo.
b. Tanto implementações iterativas quanto recursivas são baseadas em uma estrutura de controle.
c. Há várias funções que podem ser resolvidas tanto iterativamente quanto recursivamente.
d. A recursão consegue a repetição por meio de chamadas repetidas.
e. Soluções recursivas criam uma outra cópia da função, o que pode consumir muita memória dependendo da quantidade de chamadas recursivas.
a) Verdadeiro
b) Falso

Prévia do material em texto

Painel Meus cursos 32010001906-T01-2024-1 📚 Módulo 3
✅ [A3] Avaliação do Módulo 3 – Algoritmos recursivos
Iniciado em sexta, 5 jul 2024, 13:03
Estado Finalizada
Concluída em sexta, 5 jul 2024, 13:39
Tempo
empregado
36 minutos 24 segundos
Avaliar 9,00 de um máximo de 10,00(90%)
Comentários
Questão 1
Correto
Atingiu 1,00 de 1,00
A recursividade indireta é produzida quando um programa ativa outro, que terminará ativando novamente o
primeiro. Por exemplo:  um programa A chama um programa B, e o programa B chama o programa A.
Escolha uma opção:
Verdadeiro 
Falso
https://ava.ufms.br/my/
https://ava.ufms.br/course/view.php?id=53724
https://ava.ufms.br/course/view.php?id=53724#section-4
https://ava.ufms.br/mod/quiz/view.php?id=738914
Questão 2
Incorreto
Atingiu 0,00 de 1,00
Considere uma função recursiva f(x) com o seguinte formato:
f(x) = 1, se x = 1;
f(x) = f(x/2), se x for um número par;
f(x) = f(3x+1), se x for um número ímpar.
Sabe-se que, para qualquer número x maior que zero, f(x) sempre terminará após algumas chamadas
recursivas. Escreva um programa que, dado um número x > 0, calcula quantas chamadas recursivas são
necessárias até que f(x) seja igual a 1. 
Por exemplo:
Teste Entrada Resultado
1 3 8
2 10 7
Resposta: (regime de penalidade: 0%)
def f(x):
 if x == 1:
 return 1
 elif x % 2 == 0:
 return f(x // 2)
 else:
 return f(3 * x + 1)
 
def count_recursive_calls(x):
 def count_calls_helper(x, count):
 if x == 1:
 return count
 elif x % 2 == 0:
 return count_calls_helper(x // 2, count + 1)
 else:
 return count_calls_helper(3 * x + 1, count + 1)
 return count_calls_helper(x, 1) # Inicia com count = 1 para contar a prim
# Teste para x = 3
x1 = 3
result1 = count_recursive_calls(x1)
Teste Entrada Esperado Obteve
 1 3 8 8 
 2 10 7 8 
Alguns casos de teste ocultos também falharam.
Seu código deve passar em todos os testes para receber qualquer nota. Tente novamente.
Mostrar diferenças
Incorreto
Notas para este envio: 0,00/1,00.
1 ▼
2 ▼
3
4 ▼
5
6 ▼
7
8
9 ▼
10 ▼
11 ▼
12
13 ▼
14
15 ▼
16
17
18
19
20
21
22
 
Questão 3
Correto
Atingiu 1,00 de 1,00
Questão 4
Correto
Atingiu 1,00 de 1,00
Questão 5
Correto
Atingiu 1,00 de 1,00
Em relação aos conceitos de iteratividade e recursividade, escolha uma sentença INCORRETA.
a. A recursão não possui desvantagens, portanto, as soluções recursivas sempre serão a melhor opção
para implementar a solução de qualquer algoritmo.

b. Tanto implementações iterativas quanto recursivas são baseadas em uma estrutura de controle.
c. Há várias funções que podem ser resolvidas tanto iterativamente quanto recursivamente.
d. A recursão consegue a repetição por meio de chamadas repetidas.
e. Soluções recursivas criam uma outra cópia da função, o que pode consumir muita memória
dependendo da quantidade de chamadas recursivas.
Em geral, os algoritmos recursivos realizam chamadas para si próprio e passam por parâmetro uma nova
entrada, que geralmente é maior que a entrada anterior. Ou seja, a cada chamada recursiva o tamanho da
entrada aumenta, e essa é a dinâmica que levará ao término da recursão.
Escolha uma opção:
Verdadeiro
Falso 
O fluxo de controle de um algoritmo recursivo requer três condições:
1) Um teste  para parar  ou continuar  a recursão (chamada
de condição de saída  )
2) Uma ativação recursiva  (para continuar a recursão)
3) Um caso final  para terminar  a recursão.
 
 
Questão 6
Correto
Atingiu 1,00 de 1,00
Questão 7
Correto
Atingiu 1,00 de 1,00
Questão 8
Correto
Atingiu 1,00 de 1,00
Questão 9
Correto
Atingiu 1,00 de 1,00
Assim como acontece com algoritmos iterativos, algoritmos recursivos podem executar indefinidamente
quando não são programados apropriadamente. Quando isso acontece, dizemos que o algoritmo entrou em
uma recursão infinita.
Escolha uma opção:
Verdadeiro 
Falso
Um problema que pode ser resolvido por recursão também pode ser resolvido por iteração.
Escolha uma opção:
Verdadeiro 
Falso
Métodos recursivos realizam chamadas para si próprio, e cada chamada gera um custo extra de
armazenamento dos parâmetros. Dizemos que há overflow em um algoritmo recursivo quando a quantidade de
chamadas recursivas extrapola o consumo de memória limite para armazenamento dos parâmetros das
chamadas.
Escolha uma opção:
Verdadeiro 
Falso
Torre de hanói, busca binária e ordenação são exemplos de algoritmos que possuem soluções recursivas.
Escolha uma opção:
Verdadeiro 
Falso
Questão 10
Correto
Atingiu 1,00 de 1,00
Um programa pode fazer chamadas recursivas de duas maneiras: direta ou indireta.
Escolha uma opção:
Verdadeiro 
Falso
Atividade anterior
◄ 📍 [Checkout de Presença] Módulo 3 – Algoritmos recursivos
Seguir para...
Próxima atividade
▶ [Videoaula] Apresentação do Módulo 4 ►
Manter contato
Suporte Técnico ao Usuário
 https://suporteagetic.ufms.br
 (67) 3345-7613
 suporte.agead@ufms.br

https://ava.ufms.br/mod/quiz/view.php?id=738912&forceview=1
https://ava.ufms.br/mod/url/view.php?id=738915&forceview=1
https://suporteagetic.ufms.br/
tel:(67) 3345-7613
mailto:suporte.agead@ufms.br
https://api.whatsapp.com/send?phone=556733457613

Mais conteúdos dessa disciplina