Program Seri Fibonacci di Java menggunakan Gelung & Pengulangan

Isi kandungan:

Anonim

Apa itu Fibonacci Series?

Dalam siri Fibonacci, nombor seterusnya adalah jumlah dua nombor sebelumnya. Dua nombor pertama siri Fibonacci adalah 0 dan 1.

Nombor Fibonacci digunakan secara signifikan dalam kajian algoritma jangka masa pengkomputeran untuk menentukan pembahagi biasa yang paling besar dari dua bilangan bulat. Dalam aritmetik, susunan Wythoff adalah matriks nombor tak terbatas yang dihasilkan dari urutan Fibonacci.

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

Kod Java menggunakan For Loop

// Menggunakan Untuk Gelungkelas awam FibonacciContoh {utama kekosongan statik awam (String [] args){// Tetapkan ke bilangan elemen yang anda mahukan dalam Fibonacci Seriesint maxNumber = 10;int sebelumnyaNumber = 0;int nextNumber = 1;System.out.print ("Fibonacci Series of" + maxNumber + "nombor:");untuk (int i = 1; i <= maxNumber; ++ i){System.out.print (nombor sebelumnya + "");/ * Pada setiap lelaran, kami memberikan nombor kedua* ke nombor pertama dan memberikan jumlah dua terakhir* nombor hingga nombor kedua* /int jumlah = nombor sebelumnya + nombor seterusnya;sebelumnyaNumber = nextNumber;nombor seterusnya = jumlah;}}}
Pengeluaran:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Logik Program:
  • previousNumber diinisialisasi menjadi 0 dan nextNumber diinisialisasi menjadi 1
  • Untuk Loop berulang maxNumber
    • Paparkan Nombor sebelumnya
    • Mengira jumlah Nombor sebelumnya dan Nombor berikutnya
    • Mengemas kini nilai baru Nombor sebelumnya dan Nombor berikutnya

Kod Java menggunakan While Loop

Anda juga boleh menghasilkan Fibonacci Series menggunakan a

While gelung di Jawa.
// Menggunakan Loop Semasakelas awam FibonacciWhileExample {utama kekosongan statik awam (String [] args){int maxNumber = 10, sebelumnyaNumber = 0, nextNumber = 1;System.out.print ("Fibonacci Series of" + maxNumber + "nombor:");int i = 1;semasa (i <= maxNumber){System.out.print (nombor sebelumnya + "");int jumlah = nombor sebelumnya + nombor seterusnya;sebelumnyaNumber = nextNumber;nombor seterusnya = jumlah;saya ++;}}}
Pengeluaran:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34

Satu-satunya perbezaan dalam logik program adalah penggunaan WHILE Loop untuk mencetak Nombor Fibonacci

Siri Fibonacci Berdasarkan Input Pengguna

// siri fibonacci berdasarkan input penggunaimport java.util.Scanner;kelas awam FibonacciContoh {utama kekosongan statik awam (String [] args){int maxNumber = 0;int sebelumnyaNumber = 0;int nextNumber = 1;System.out.println ("Berapa banyak nombor yang anda mahukan di Fibonacci:");Pengimbas pengimbas = Pengimbas baru (System.in);maxNumber = scanner.nextInt ();System.out.print ("Fibonacci Series of" + maxNumber + "nombor:");untuk (int i = 1; i <= maxNumber; ++ i){System.out.print (nombor sebelumnya + "");/ * Pada setiap lelaran, kami memberikan nombor kedua* ke nombor pertama dan memberikan jumlah dua terakhir* nombor hingga nombor kedua* /int jumlah = nombor sebelumnya + nombor seterusnya;sebelumnyaNumber = nextNumber;nombor seterusnya = jumlah;}}}
Logik Program:

Logiknya sama seperti sebelumnya. Daripada mengekodkan bilangan elemen untuk ditunjukkan dalam Fibonacci Series, pengguna diminta untuk menulis nombor.

Kod Java menggunakan Recursion

// Menggunakan Rekursikelas awam FibonacciCalc {imbuhan intibonacci awam statik (int n) {jika (n == 0) {pulangan 0;}jika (n == 1 || n == 2) {pulangan 1;}kembali fibonacciRecursion (n-2) + fibonacciRecursion (n-1);}kekosongan statik awam utama (String args []) {int maxNumber = 10;System.out.print ("Fibonacci Series of" + maxNumber + "nombor:");untuk (int i = 0; i  Pengeluaran: 
Fibonacci Series of 10 numbers: 0 1 1 2 3 5 8 13 21 34
Logik Program:

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

fibonacciRecursion ():

  1. Mengambil nombor input. Memeriksa 0, 1, 2 dan mengembalikan 0, 1, 1 dengan sewajarnya kerana urutan Fibonacci bermula dengan 0, 1, 1.
  2. Apabila input n adalah> = 3, Fungsi akan memanggil dirinya secara berulang. Panggilan dilakukan dua kali. Mari lihat contoh 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

Kini hasil ditambah 0 + 1 + 1 + 0 + 1 = 3