Σειρά Fibonacci μέσα Java χρησιμοποιώντας το πρόγραμμα Recursion and Loops
Τι περιλαμβάνει η σειρά Fibonacci Java?
A Σειρά Fibonacci in Java είναι μια σειρά αριθμών στους οποίους ο επόμενος αριθμός είναι το άθροισμα των δύο προηγούμενων αριθμών. Οι δύο πρώτοι αριθμοί της σειράς Fibonacci είναι 0 και 1. Οι αριθμοί Fibonacci χρησιμοποιούνται σημαντικά στην υπολογιστική μελέτη χρόνου εκτέλεσης ενός αλγορίθμου για τον προσδιορισμό του μεγαλύτερου κοινού διαιρέτη δύο ακεραίων.
Στην αριθμητική, ο πίνακας Wythoff είναι ένας άπειρος πίνακας αριθμών που προκύπτει από την ακολουθία Fibonacci.
The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...
Πρόγραμμα σειράς Fibonacci σε Java χρησιμοποιώντας το 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; } } }
Παραγωγή:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Λογική προγράμματος:
- Το previousNumber αρχικοποιείται σε 0 και το nextNumber αρχικοποιείται σε 1
- Ο βρόχος Fibonacci For επαναλαμβάνεται
maxNumber
- Εμφάνιση του προηγούμενου Αριθμού
- Υπολογίζει το άθροισμα του προηγούμενου αριθμού και του επόμενου αριθμού
- Ενημερώνει τις νέες τιμές των previousNumber και nextNumber
Πρόγραμμα σειράς Fibonacci σε Java χρησιμοποιώντας ενώ βρόχο
Μπορείτε επίσης να δημιουργήσετε Java Σειρά Fibonacci χρησιμοποιώντας α While
βρόχο μέσα 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++; } } }
Παραγωγή:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
Η μόνη διαφορά στη λογική του προγράμματος είναι η χρήση του WHILE Βρόχος για να εκτυπώσετε Fibonacci Numbers
Σειρά Fibonacci με βάση την είσοδο του χρήστη
//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; } } }
Λογική προγράμματος:
Η λογική είναι ίδια με την προηγούμενη. Αντί να κωδικοποιήσετε τον αριθμό των στοιχείων που θα εμφανίζονται Java Σειρά Fibonacci, ο χρήστης καλείται να γράψει αριθμό.
Σειρά Fibonacci με χρήση αναδρομής σε Java
Παρακάτω είναι ένα πρόγραμμα της σειράς Fibonacci Java χρησιμοποιώντας αναδρομή:
//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) +" "); } } }
Παραγωγή:
Fibonacci Series of 10 numbers: 0 1 1 2 3 5 8 13 21 34
Λογική προγράμματος:
Μια αναδρομική συνάρτηση είναι αυτή που έχει τη δυνατότητα να καλεί τον εαυτό της.
fibonacciRecursion():
- The Java Η συνάρτηση αναδρομής Fibonacci παίρνει έναν αριθμό εισόδου. Ελέγχει για 0, 1, 2 και επιστρέφει 0, 1, 1 ανάλογα επειδή η ακολουθία Fibonacci σε Java ξεκινά με 0, 1, 1.
- Όταν η είσοδος n είναι >=3, η συνάρτηση θα καλεί τον εαυτό της αναδρομικά. Η κλήση γίνεται δύο φορές. Ας δούμε τη σειρά Fibonacci Java χρησιμοποιώντας το παράδειγμα αναδρομής για την εισαγωγή του 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
Τώρα προστίθεται το αποτέλεσμα 0+1+1+0+1=3