Program Seri Fibonacci di Java menggunakan Loops & Pengulangan

Daftar Isi:

Anonim

Apa itu Seri Fibonacci?

Dalam deret Fibonacci, angka berikutnya adalah jumlah dari dua angka sebelumnya. Dua angka pertama dari deret Fibonacci adalah 0 dan 1.

Angka Fibonacci secara signifikan digunakan dalam studi komputasi run-time algoritme untuk menentukan pembagi persekutuan terbesar dari dua bilangan bulat. Dalam aritmatika, larik Wythoff adalah matriks angka tak hingga yang dihasilkan dari deret Fibonacci.

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

Kode Java menggunakan For Loop

// Menggunakan For Loopkelas publik FibonacciExample {public static void main (String [] args){// Setel ke jumlah elemen yang Anda inginkan dalam Deret Fibonacciint maxNumber = 10;int priorNumber = 0;int nextNumber = 1;System.out.print ("Seri Fibonacci dari" + maxNumber + "angka:");untuk (int i = 1; i <= maxNumber; ++ i){System.out.print (nomor sebelumnya + "");/ * Pada setiap iterasi, kami menetapkan nomor kedua* ke angka pertama dan menentukan jumlah dari dua angka terakhir* angka ke angka kedua* /int sum = priorNumber + nextNumber;PreviousNumber = nextNumber;nextNumber = jumlah;}}}
Keluaran:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Logika Program:
  • PreviousNumber diinisialisasi ke 0 dan nextNumber diinisialisasi ke 1
  • Untuk Loop mengulangi maxNumber
    • Tampilkan nomor sebelumnya
    • Menghitung jumlah PreviousNumber dan nextNumber
    • Memperbarui nilai baru dari nomor sebelumnya dan nomor berikutnya

Kode Java menggunakan While Loop

Anda juga dapat membuat Seri Fibonacci menggunakan file

While loop di Java.
// Menggunakan While Looppublic class FibonacciWhileExample {public static void main (String [] args){int maxNumber = 10, priorNumber = 0, nextNumber = 1;System.out.print ("Seri Fibonacci dari" + maxNumber + "angka:");int i = 1;sementara (i <= maxNumber){System.out.print (nomor sebelumnya + "");int sum = priorNumber + nextNumber;PreviousNumber = nextNumber;nextNumber = jumlah;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 Angka Fibonacci

Seri Fibonacci Berdasarkan Input Pengguna

// Seri fibonacci berdasarkan input penggunaimport java.util.Scanner;kelas publik FibonacciExample {public static void main (String [] args){int maxNumber = 0;int priorNumber = 0;int nextNumber = 1;System.out.println ("Berapa banyak angka yang Anda inginkan dalam Fibonacci:");Pemindai pemindai = Pemindai baru (System.in);maxNumber = scanner.nextInt ();System.out.print ("Seri Fibonacci dari" + maxNumber + "angka:");untuk (int i = 1; i <= maxNumber; ++ i){System.out.print (nomor sebelumnya + "");/ * Pada setiap iterasi, kami menetapkan nomor kedua* ke angka pertama dan menentukan jumlah dari dua angka terakhir* angka ke angka kedua* /int sum = priorNumber + nextNumber;PreviousNumber = nextNumber;nextNumber = jumlah;}}}
Logika Program:

Logikanya sama seperti sebelumnya. Alih-alih melakukan hardcode jumlah elemen yang akan ditampilkan dalam Seri Fibonacci, pengguna diminta untuk menulis angka.

Kode Java menggunakan Rekursi

// Menggunakan Rekursikelas publik FibonacciCalc {fibonacciRecursion int public static (int n) {jika (n == 0) {kembali 0;}jika (n == 1 || n == 2) {kembali 1;}kembali fibonacciRecursion (n-2) + fibonacciRecursion (n-1);}public static void main (String args []) {int maxNumber = 10;System.out.print ("Seri Fibonacci dari" + maxNumber + "angka:");untuk (int i = 0; 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. Mengambil nomor masukan. Memeriksa 0, 1, 2 dan mengembalikan 0, 1, 1 sesuai karena deret Fibonacci dimulai dengan 0, 1, 1.
  2. Ketika input n> = 3, Fungsi tersebut akan memanggil dirinya sendiri secara rekursif. Panggilan dilakukan dua kali. Mari kita lihat contoh untuk input 4.
fibonacciRecursion (4)It will recursively call fibonacciRecursion function for values 2 and 3fibonacciRecursion (2) \\ call for value 0 and 1fibonacciRecursion (0) = 0fibonacciRecursion (1) = 1fibonacciRecursion (3) \\ It will call for 1 and 2fibonacciRecursion (1) = 1fibonacciRecursion (2) \\ It will call for 0 and 1fibonacciRecursion (0) = 0fibonacciRecursion (1) = 1

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