파보나치 수열 - Java 간단한 풀이

728x90

https://ko.wikipedia.org/wiki/%ED%94%BC%EB%B3%B4%EB%82%98%EC%B9%98_%EC%88%98

 

피보나치 수 - 위키백과, 우리 모두의 백과사전

피보나치 수를 이용한 사각형 채우기 수학에서, 피보나치 수(영어: Fibonacci numbers)는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열이다. 처음 여섯 항은 각각 1, 1, 2, 3, 5, 8

ko.wikipedia.org

 

파보나치 수열 이란 위키백과에 검색해보면 수학에서, 피보나치 수(영어: Fibonacci numbers)는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열이다. 처음 여섯 항은 각각 1, 1, 2, 3, 5, 8이다. 편의상 0번째 항을 0으로 두기도 한다. 이라고 나옵니다.


간단하게 만들어 보았습니다.

import java.util.Scanner;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int a = 1;
        int b = 1;
        int c;
        System.out.print(a+" ");
        System.out.print(b+" ");
        for(int i=2; i<n; i++){
            c = a+b;
            System.out.print(c+" ");
            a = b;
            b = c;
        }
    }
}

n에 10을 넣고 결과 값을 보면 1 1 2 3 5 8 13 21 34 55 가 나옵니다.


풀이

파보나치 수열에서의 필요한 변수는 3개입니다.

a,b,c 

파보나치 수열은 첫 번째 수와 두 번째 수를 더해서 세 번째 수를 만들어냅니다.

그러면 a=1, b=1 c=a+b 가 됩니다.

 

우리는 n만큼의 파보나치 수가 출력되기를 바랍니다.

이미 a와 b는 정해져있으므로 바로 출력해줍니다. 그러면 i=0이 아닌 2부터 반복하게 됩니다.

그렇게 반복하면서 c를 만들어 출력합니다. c=a+b

그 다음 a에 b를 넣고 b에 c를 넣고 c를 다시 a+b로 만들어 출력합니다.

 


 

반응형