Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Deret Fibonacci di Java menggunakan Program Rekursi dan Loop

Apa itu Deret Fibonacci di Java?

Seri Fibonacci di Jawa adalah deretan angka dimana angka berikutnya adalah jumlah dari dua angka sebelumnya. Dua angka pertama dari deret Fibonacci adalah 0 dan 1. Angka-angka Fibonacci secara signifikan digunakan dalam studi komputasi run-time dari suatu algoritma untuk menentukan pembagi persekutuan terbesar dari dua bilangan bulat.

Dalam aritmatika, larik Wythoff adalah matriks bilangan tak berhingga yang dihasilkan dari barisan Fibonacci.

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

Program Deret Fibonacci di Java menggunakan For Loop

//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;
	        }
	}
}

Keluaran:

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

Logika Program:

Program Deret Fibonacci di Java menggunakan While Loop

Anda juga dapat membuat Seri Java Fibonacci menggunakan While loop di Jawa.

//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++;
	        }
 
	}
 
}

Keluaran:

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

Satu-satunya perbedaan dalam logika program adalah penggunaan WHILE Loop untuk mencetak Bilangan Fibonacci

Deret Fibonacci Berdasarkan Input Pengguna

//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;
	        }
 
	}
 
}

Logika Program:

Logikanya sama seperti sebelumnya. Alih-alih melakukan hardcoding jumlah elemen untuk ditampilkan di Java Fibonacci Series, pengguna diminta untuk menulis angka.

Deret Fibonacci Menggunakan Rekursi di Java

Di bawah ini adalah program deret Fibonacci di Java menggunakan rekursi:

//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) +" ");
		}
	}
}


Keluaran:

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

Logika Program:

Fungsi rekursif adalah fungsi yang memiliki kemampuan untuk memanggil dirinya sendiri.

fibonacciRecursion():

  1. Fungsi rekursi Java Fibonacci mengambil nomor input. Memeriksa 0, 1, 2 dan mengembalikan 0, 1, 1 sesuai karena deret Fibonacci di Java dimulai dengan 0, 1, 1.
  2. Ketika input n adalah>=3, Fungsi akan memanggil dirinya sendiri secara rekursif. Pemanggilan dilakukan dua kali. Mari kita lihat Deret Fibonacci di Java menggunakan contoh rekursi untuk input 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

Sekarang hasilnya ditambahkan 0+1+1+0+1=3


java

  1. Program Halo Dunia Java
  2. Variabel dan Literal Java
  3. Ekspresi, Pernyataan, dan Blok Java
  4. Kelas dan Objek Java
  5. Kelas Abstrak Java dan Metode Abstrak
  6. Java Nested dan Kelas Dalam
  7. Lemparan Jawa
  8. Autoboxing dan unboxing Java
  9. Program Java untuk Mengecek Bilangan Prima
  10. Bilangan Armstrong dalam Program JAVA Menggunakan For Loop