Carregando...
Carregando...
Ajude a melhorar a plataforma
É necessário o entendimento sobre funções recursivas e funções iterativas para seu uso de forma adequada. Existem problemas naturalmente recursivos e aqueles definidos em termos recursivos. Uma função pode ser escrita como uma função recursiva sem o uso de iteração. Também há possibilidade de que um problema definido recursivamente de forma natural dê origem a uma função iterativa no código fonte. Identifique se são verdadeiras (V) ou falsas (F) as afirmativas a seguir. I. ( ) Toda função recursiva deve conter uma condição que estabelece o ponto em que ela deve parar de chamar a si própria. II. ( ) Funções recursivas usam repetição por meio de comandos e utilizam uma condição de teste que, ao falhar, finaliza a iteração. III. ( ) Funções iterativas usam repetição por meio de várias chamadas a uma rotina e utilizam o alcance de um caso trivial (ou caso básico) para serem finalizadas. IV. ( ) A recursão entra em loop infinito nos casos em que a condição de parada (ou caso básico) nunca for atingida. Assinale a alternativa que apresenta a sequência correta.
Explique melhor esta questão
Abre o Tutor com o enunciado e as alternativas já no campo — você revisa e envia.
Esta questão foi verificada por um de nossos administradores.
JUSTIFICATIVA A afirmativa I é VERDADEIRA, pois toda função recursiva possui uma condição de parada, já que é ela quem determina em que ponto a função não mais chamará a si própria, iniciando o processo de saída das sucessivas chamadas. A afirmativa II é FALSA, pois são as funções iterativas que usam repetição por meio de comandos e utilizam uma condição de teste que, ao falhar, finaliza o ciclo de iterações. A afirmativa III é FALSA, pois são as funções recursivas que usam repetição por meio de várias chamadas a uma rotina e utilizam o alcance de um caso trivial para serem finalizadas. A afirmativa IV é VERDADEIRA, pois funções iterativas terminam quando a condição de teste falha, e funções recursivas terminam quando se atinge o caso trivial (ou caso básico). As duas podem entrar em loop infinito, no caso das funções iterativas se o teste nunca se tornar falso e no caso das funções recursivas se o problema não for reduzido de forma que convirja para o caso trivial (ou caso básico).