Carregando...
Carregando...
Ajude a melhorar a plataforma
A utilização de recursividade não apenas diminui a quantidade de código a ser usada em um procedimento ou chamada, mas possibilita uma economia de tempo nas codificações como, por exemplo, calculando o fatorial de um número. “Um método recursivo pode chamar outro método, que por sua vez pode fazer uma chamada de volta ao método recursivo. Isso é conhecido como uma chamada recursiva indireta ou recursão indireta. Por exemplo, o método A chama o método B, que faz uma chamada de volta ao método A. Isso ainda é recursão, porque a segunda chamada para o método A é feita enquanto a primeira está ativa – isto é, a primeira chamada ao método A ainda não concluiu sua execução (porque está esperando o método B voltar um resultado para ela) e não retornou ao chamador original do método A” (DEITEL; DEITEL, 2016, p. 609). DEITEL, P.; DEITEL, H. Java: como programar. 10. ed. São Paulo: Pearson Education do Brasil, 2016. Observe o trecho de código a seguir, realizado na linguagem Java, versão 8. Fonte: Elaboração do autor, 2023. Sobre o código anterior, avalie as afirmativas a seguir. I. A codificação mostrada possui erro sintático, pois, nessa chamada recursiva, o método Fibonacci está chamando outro método para cálculo de mesmo nome, retornando uma chamada também com o mesmo nome de método. II. A condição “number.equals(BigInteger.ZERO)” permite que todo trecho de código não necessite ser executado, uma vez que a estrutura “if…else” está limitando a execução caso o “if” inicial seja verdadeiro. III. É possível realizar operações matemáticas por meio de métodos com cálculos predefinidos, seja para comparação, subtração ou adição numérica, passando como parâmetro o valor desejado. Está correto o que se afirma em:
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 está incorreta, pois não se apresenta erro sintático pelo motivo apresentado. Ao realizar uma chamada para si mesmo, o método atende a uma característica de desenvolvimento chamada recursão. A afirmativa II está correta, uma vez que existem métodos predefinidos disponíveis para serem usados, e, nesse caso, a condicional realiza um procedimento limitante no bloco condicional, podendo ou não ser executado conforme o valor obtido. A afirmativa III está correta, pois, como mostrado no código, é possível realizar operações matemáticas e lógicas por meio de métodos com cálculos predefinidos, seja para comparação, subtração ou adição.