CodeGym /Blogue Java /Random-PT /Série Fibonacci em Java
John Squirrels
Nível 41
San Francisco

Série Fibonacci em Java

Publicado no grupo Random-PT
Antes de examinar o programa da série de Fibonacci em Java, vamos explorar qual é a forma matemática de calcular os números de Fibonacci.
“A série de Fibonacci é formada quando somamos os dois últimos números consecutivos da sequência começando com 0 e 1.”
Em outras palavras, podemos dizer que numa sequência de Fibonacci o próximo número é igual à soma dos dois últimos números. Por exemplo, 0, 1, 1, 2, 3, 5, 8, 13, 21, 34… Se olharmos para a série acima, parece bastante simples de calcular em matemática. Você apenas pega os dois últimos números de Fibonacci, soma-os e pronto. O resultado é o último número da série. Portanto, o próximo número na sequência de Fibonacci será 21 + 34 = 55. No entanto, em Java existem vários algoritmos para fazer isso. Vamos dar uma olhada em nossos caminhos possíveis.

Série Fibonacci em Java [método iterativo]

Nossa primeira e mais básica maneira de calcular um programa da série de Fibonacci em Java será usando um método iterativo. Como o nome sugere, iteraremos a série usando um loop. Vamos nos aprofundar no exemplo a seguir.

Exemplo

public class IterativeFibonacci {

	public static void fibonacci(int MAX) {

		int firstNumber = 0;
		int secondNumber = 1;
		int fibonacci = '\0';

		System.out.print(firstNumber + " ");
		System.out.print(secondNumber + " ");

		for (int i = 2; i < MAX; i++) {

			fibonacci = firstNumber + secondNumber;
			System.out.print(fibonacci + " ");

			firstNumber = secondNumber;
			secondNumber = fibonacci;
		}
	}

	public static void main(String[] args) {

		System.out.println("Print Fibonacci Series Using Iterative Method");
		int MAX = 15;
		fibonacci(MAX);

	}
}

Saída

Imprima a série de Fibonacci usando o método iterativo 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377

Explicação

No exemplo acima, estamos usando um método chamado “ fibonacci ” para imprimir a série de fibonacci iterativamente. A variável MAX armazena o número total de números de Fibonacci que você deseja imprimir. As duas variáveis ​​firstNumber e secondNumber armazenam os dois primeiros números de Fibonacci respectivamente. Então o loop for começa com i = 2, porque o primeiro e o segundo números de Fibonacci já estão impressos. Em cada iteração, o primeiro e o segundo número são atualizados para manter a série. O loop termina quando se aproxima do limite MAX, ou seja; eu <MÁX.

Série Fibonacci usando recursão em Java

Como você está familiarizado com o método iterativo, vamos calcular a série de Fibonacci usando recursão em Java.

Exemplo

public class RecursiveFibonacci {

	// recursive method to return the fibonacci series
	public static int fibonacci(int MAX) {

		// base case
		if (MAX <= 1) {
			return MAX;
		}

		// recursive call
		else {
			// calculate the last two fibonacci numbers recursively
			return fibonacci(MAX - 2) + fibonacci(MAX - 1);
		}

	}

	public static void main(String[] args) {

		System.out.println("Print Fibonacci Series Using Recursion in Java");

		int MAX = 10;
		for (int i = 0; i < MAX; i++) {
		    System.out.print(fibonacci(i) + " ");
		}
	}
}

Saída

Imprimir série de Fibonacci usando recursão em Java 0 1 1 2 3 5 8 13 21 34

Explicação

Primeiro definimos o número MAX de dígitos para a série recursiva de Fibonacci em Java. Então chamamos a função recursiva chamada “ fibonacci ”. Como você sabe, para usar recursão em Java, temos que definir e tratar 2 casos. O primeiro é o caso base e o outro é o caso recursivo. No caso base, verificamos se o valor MAX é menor ou igual a 1. Se for verdade, então o mesmo número é retornado (imagine os dois primeiros dígitos de Fibonacci 0 e 1). É assim que os números básicos são calculados. Na chamada recursiva, calculamos os dois últimos números da série reduzindo um e dois de MAX. O método fibonacci continuará se chamando até atingir os dois últimos dígitos (0 e 1), adicioná-los e continuar adicionando os dois últimos dígitos até atingir MAX.

Conclusão

Espero que agora você entenda as duas maneiras diferentes de calcular Fibonacci em Java. Você também pode usar a programação dinâmica para se desafiar. Como sempre, esperamos que você pratique e melhore a cada dia. Continue aprendendo e continue crescendo!
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION