피보나치 수열 Java 재귀 및 루프 프로그램 사용
피보나치 수열이란 무엇입니까? Java?
A 피보나치 시리즈 in Java 다음 숫자가 이전 두 숫자의 합인 숫자 시리즈입니다. 피보나치 시리즈의 처음 두 숫자는 0과 1입니다. 피보나치 숫자는 두 정수의 최대 공약수를 결정하는 알고리즘의 계산 런타임 연구에서 상당히 사용됩니다.
산술에서 와이토프 배열은 피보나치 수열에서 나오는 무한한 숫자 행렬입니다.
The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...
피보나치 시리즈 프로그램 Java 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;
}
}
}
출력:
Fibonacci Series of 10 numbers:0 1 1 2 3 5 8 13 21 34
프로그램 논리:
- 이전Number는 0으로 초기화되고 nextNumber는 1로 초기화됩니다.
- Fibonacci For 루프는 다음을 반복합니다.
maxNumber - 이전 번호 표시
- PreviousNumber와 nextNumber의 합을 계산합니다.
- PreviousNumber 및 nextNumber의 새 값을 업데이트합니다.
피보나치 시리즈 프로그램 Java While 루프를 사용하여
생성할 수도 있습니다. Java 피보나치 수열을 이용한 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 루프 피보나치 인쇄하기 Numbers
사용자 입력을 기반으로 한 피보나치 시리즈
//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 피보나치 수열에서는 사용자에게 숫자를 쓰도록 요청합니다.
재귀를 사용한 피보나치 수열 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
프로그램 논리:
재귀 함수는 자신을 호출할 수 있는 기능을 가진 함수입니다.
피보나치재귀():
- The Java 피보나치 재귀 함수는 입력 숫자를 사용합니다. 피보나치 수열 때문에 0, 1, 2를 확인하고 그에 따라 0, 1, 1을 반환합니다. Java 0, 1, 1로 시작합니다.
- 입력 n이 3보다 크면 함수는 재귀적으로 자신을 호출합니다. 통화는 XNUMX번 이루어집니다. 피보나치 수열을 살펴보겠습니다. 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
