Recursivo

Na programação de computadores, o termo recursivo descreve uma função ou método que calcula repetidamente uma parte menor de si para chegar ao resultado final. É semelhante à iteração, mas, em vez de repetir um conjunto de operações, uma função recursiva realiza repetição referindo-se a si mesma em sua própria definição. Embora o conceito de programação recursiva possa ser difícil de entender inicialmente, dominá-lo pode ser muito útil. A recursão é uma das ferramentas fundamentais da ciência da computação.

Um exemplo clássico é o método recursivo para calcular o fatorial de um número. O fatorial de um número inteiro n, que é escrito como n !, é o resultado da multiplicação de n por todos os números inteiros positivos menores que n. Por exemplo, 3! = 3 x 2 x 1, o que resulta em 6 e 4! = 4 x 3 x 2 x 1, o que resulta em 24. Uma maneira eficiente de calcular um fatorial é usando uma função recursiva.

Abaixo está um exemplo de uma função fatorial recursiva escrita em JavaScript.

função fatorial (n) {return (n === 0)? 1: n * fatorial (n-1); }

Como você pode ver, parte da definição da função fatorial é o resultado do fatorial realizado em um número inteiro menor. Ao se chamar, ele pode multiplicar o número por cada número positivo menor que ele e retornar o resultado final. Funções recursivas podem ser úteis em outros cálculos, como o cálculo de números de Fibonacci ou o maior divisor comum.

O uso da lógica recursiva pode ter algumas quedas, incluindo a criação de um loop infinito na programação. Por esse motivo, ter uma condição de escape (como fazer até) ajuda a reduzir, se não eliminar, a chance de ocorrer um loop sem fim. Se ocorrer um loop sem fim, isso pode fazer com que o programa use muita memória. Além disso, pode fazer com que um programa, sistema operacional ou computador pare de funcionar.