Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Série de Fibonacci en Java utilisant le programme de récursivité et de boucles

Qu'est-ce que la série de Fibonacci en Java ?

Une série de Fibonacci en Java est une série de nombres dans laquelle le nombre suivant est la somme des deux nombres précédents. Les deux premiers nombres de la série de Fibonacci sont 0 et 1. Les nombres de Fibonacci sont utilisés de manière significative dans l'étude d'exécution informatique d'un algorithme pour déterminer le plus grand diviseur commun de deux entiers.

En arithmétique, le tableau de Wythoff est une matrice infinie de nombres résultant de la suite de Fibonacci.

The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...

Programme de séries de Fibonacci en Java utilisant la boucle For

//Using  For Loop
public class FibonacciExample {
 
	public static void main(String[] args) 
	{
		// Set it to the number of elements you want in the Fibonacci Series
		 int maxNumber = 10; 
		 int previousNumber = 0;
		 int nextNumber = 1;
		 
	        System.out.print("Fibonacci Series of "+maxNumber+" numbers:");
 
	        for (int i = 1; i <= maxNumber; ++i)
	        {
	            System.out.print(previousNumber+" ");
	            /* On each iteration, we are assigning second number
	             * to the first number and assigning the sum of last two
	             * numbers to the second number
	             */
 
	      
	            int sum = previousNumber + nextNumber;
	            previousNumber = nextNumber;
	            nextNumber = sum;
	        }
	}
}

Sortie :

Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34

Logique du programme :

Programme de séries de Fibonacci en Java utilisant la boucle While

Vous pouvez également générer des séries Java Fibonacci en utilisant un While boucle en Java.

//Using  While Loop
public class FibonacciWhileExample {
	public static void main(String[] args) 
	{
		 int maxNumber = 10, previousNumber = 0, nextNumber = 1;
	        System.out.print("Fibonacci Series of "+maxNumber+" numbers:");
 
	        int i=1;
	        while(i <= maxNumber)
	        {
	            System.out.print(previousNumber+" ");
	            int sum = previousNumber + nextNumber;
	            previousNumber = nextNumber;
	            nextNumber = sum;
	            i++;
	        }
 
	}
 
}

Sortie :

Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34

La seule différence dans la logique du programme est l'utilisation de la boucle WHILE pour imprimer les nombres de Fibonacci

Série de Fibonacci basée sur l'entrée de l'utilisateur

//fibonacci series based on the user input
import java.util.Scanner;
public class FibonacciExample {
 
	public static void main(String[] args) 
	{
	
		 int maxNumber = 0; 
		 int previousNumber = 0;
		 int nextNumber = 1;
		 
		    System.out.println("How many numbers you want in Fibonacci:");
	        Scanner scanner = new Scanner(System.in);
	        maxNumber = scanner.nextInt();
	        System.out.print("Fibonacci Series of "+maxNumber+" numbers:");
 
	        for (int i = 1; i <= maxNumber; ++i)
	        {
	            System.out.print(previousNumber+" ");
	            /* On each iteration, we are assigning second number
	             * to the first number and assigning the sum of last two
	             * numbers to the second number
	             */
 
	      
	            int sum = previousNumber + nextNumber;
	            previousNumber = nextNumber;
	            nextNumber = sum;
	        }
 
	}
 
}

Logique du programme :

La logique est la même que précédemment. Au lieu de coder en dur le nombre d'éléments à afficher dans Java Fibonacci Series, l'utilisateur est invité à écrire un nombre.

Séries de Fibonacci utilisant la récursivité en Java

Ci-dessous, un programme de séries de Fibonacci en Java utilisant la récursivité :

//Using Recursion
public class FibonacciCalc{
	public static int fibonacciRecursion(int n){
	if(n == 0){
		return 0;
	}
	if(n == 1 || n == 2){
			return 1;
		}
	return fibonacciRecursion(n-2) + fibonacciRecursion(n-1);
	}
    public static void main(String args[]) {
	int maxNumber = 10;
	System.out.print("Fibonacci Series of "+maxNumber+" numbers: ");
	for(int i = 0; i < maxNumber; i++){
			System.out.print(fibonacciRecursion(i) +" ");
		}
	}
}


Sortie :

Fibonacci Series of 10 numbers: 0 1 1 2 3 5 8 13 21 34

Logique du programme :

Une fonction récursive est une fonction qui a la capacité de s'appeler elle-même.

fibonacciRécursion() :

  1. La fonction de récursivité Java Fibonacci prend un nombre d'entrée. Vérifie 0, 1, 2 et renvoie 0, 1, 1 en conséquence car la séquence de Fibonacci en Java commence par 0, 1, 1.
  2. Lorsque l'entrée n est>=3, la fonction s'appellera elle-même de manière récursive. L'appel se fait deux fois. Voyons la série de Fibonacci en Java en utilisant un exemple de récursivité pour une entrée de 4.
	fibonacciRecursion (4)  
	It will recursively call fibonacciRecursion function for values 2 and 3
		fibonacciRecursion (2) \\ call for value 0 and 1
			fibonacciRecursion (0) = 0
			fibonacciRecursion (1) = 1
		fibonacciRecursion (3) \\ It will call for 1 and 2
			fibonacciRecursion (1) = 1
			fibonacciRecursion (2) \\ It will call for 0 and 1
				fibonacciRecursion (0) = 0
				fibonacciRecursion (1) = 1

Maintenant, le résultat est ajouté 0+1+1+0+1=3


Java

  1. Programme Java Hello World
  2. Variables et littéraux Java
  3. Expressions, instructions et blocs Java
  4. Classe et objets Java
  5. Classe abstraite Java et méthodes abstraites
  6. Classe imbriquée et interne Java
  7. Java lancer et lancer
  8. Autoboxing et déballage Java
  9. Programme Java pour vérifier le nombre premier