본문 바로가기
백준(Baekjoon)

[백준] 2747번: 피보나치 수 - 자바

by IT 정복가 2022. 5. 8.
728x90

https://www.acmicpc.net/problem/2747

 

2747번: 피보나치 수

피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가

www.acmicpc.net


[문제]


[코드]

import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int x = 0;
		int y = 1;
		
		for(int i = 0; i < n/2; i++) {
			x += y;
			y += x;
		}
		
		if(n%2 == 0)
			System.out.println(x);
		else 
			System.out.println(y);
		sc.close();
	}
}

[설명]

1. n번째 피보나치 수를 구해야 하기때문에 n을 입력받는다.

2. 1번째 수와 2번째 수는 0과 1로 고정이기 때문에 변수로 선언해 놓는다.

3. for문을 돌려 x에 1번째와 2번째의 합을 넣고, y에 1번째와 2번째를 합한 수와 y를 합한 값을 넣어준다.

4. 만약 n이 짝수라면 x를 출력시키고, 홀수라면 y를 출력시킨다. 


[결과]

728x90