Em ciência da computação, uma chamada de método recursivo é um método que chama a si mesma durante o processo de cálculo. A linguagem de programação Java suporta a recursividade como parte de sua sintaxe de programação. Embora possa ser difícil para os programadores iniciantes em Java para entender, escrever métodos recursivas freqüentemente permite que conceitos matemáticos a ser expressa claramente no programa. Por esta razão, é importante que os programadores Java para entender como usar recursão e suas limitações. Instruções
1
Determinar se o processo de cálculo a ser realizado se presta a recursividade ou não. É importante que o processo de cálculo em que o método pode ser reduzida para uma chamada repetida para si .
Um dos cálculos recursão popular é o processo de determinação do fatorial de um número . Um fatorial de um número N é o resultado da multiplicação de todos os números de 1 até N si . Por exemplo, usando a multiplicação direta :
fatorial ( 3) = 3 * 2 * 1 = 6
No entanto, o mesmo resultado é obtido quando visto de forma recursiva :
fatorial ( 3 ) = 3 * fatorial ( 2 ) = 3 * 2 * fatorial ( 1 ) = 3 * 2 * 1 = 6
Note-se que cada passo sucessivo refere-se ao mesmo processo, mas em termos simples .
Página 2
Declare o método Java que iria realizar o cálculo recursivo. Um método geralmente tem pelo menos o modificador , o tipo de retorno, os nomes dos métodos e da lista de parâmetros correspondente . O nome do método normalmente começa com uma palavra verbal minúsculas. Por exemplo, a linha a seguir define um método chamado "fato ()" que aceita um valor inteiro número de n e retorna seu fatorial :
int fato (int n) {}
< br > 3
Assegurar que no corpo do método repetitivo , o cálculo é realizado através de uma chamada para si . Certifique-se de que existe uma condição de terminação da chamada recursiva , bem como, caso contrário, o método será executado indefinidamente sem parar. Por exemplo, a linha a seguir calcula os factoria de um determinado número n , chamando -se , sucessivamente, para executar o mesmo cálculo com um valor mais simples de n-1.
Int fato (int n) {
resultado int;
if ( n == 1) return 1;
resultado = fato (n- 1) * n;
resultado de retorno;
}
Quando n - 1 é igual a 1 , o valor de 1 é devolvido . Esta é a condição de término da computação recursiva.
4
Chame o método recursivo para testá-lo. Por exemplo , a seguinte linha chama o método "fato ()" ao passar -lhe um valor de 3 para imprimir no console:
System.out.println (" fatorial de 3 é " + f.fact ( 3) );
Certifique-se que a mensagem " fatorial de 3 é 6 ' é impresso na tela
.