📌프로그램 로직
출력할 수열의 개수를 사용자 입력으로 받는 메서드
public class Fibonacci {
int[] fibonacci = new int[getUserInput()];
public static int getUserInput() {
System.out.println("원하는 수열의 개수를 입력하세요.");
Scanner sc = new Scanner(System.in);
return sc.nextInt();
}
}
getUserInput()
메서드로 수열의 개수를 입력 받고 개수 크기만큼의 fibonacci
배열을 인스턴스 변수로 생성한다.
입력된 수 만큼 피보나치 배열을 저장
public void getFibonacci() {
int fibonacci0 = 1;
int fibonacci1 = 1;
fibonacci[0] = fibonacci0;
fibonacci[1] = fibonacci1;
for (int i = 2; i < fibonacci.length; i++) {
fibonacci[i] = fibonacci[i-2] + fibonacci[i-1];
}
}
저장된 피보나치 배열 출력
public void printNumbers() {
System.out.println("[피보나치 수열 출력]");
for (int i : fibonacci) {
System.out.println(i);
}
}
📌실행 예시
📌피보나치 수열을 재귀 함수를 통해 저장
public class Fibonacci {
int count = 0;
public void getFibonacci() {
int fibonacci0 = 1;
int fibonacci1 = 1;
fibonacci[0] = fibonacci0;
fibonacci[1] = fibonacci1;
if(count + 2 == fibonacci.length) return;
fibonacci[count + 2] = fibonacci[count] + fibonacci[count + 1];
count++;
getFibonacci();
}
}
if(count + 2 == fibonacci.length) return;
를 통해 재귀 함수가 무한 루프에 빠지는 것을 방지