BACK/CodingTEST
2-4 피보나치 수열
코딩두통
2023. 1. 8. 16:11
728x90
/** 피보나치 수열
* 1) 피보나치 수열을 출력한다. 피보나치 수열이란 앞의 2개의 수를 합하여 다음 숫자가 되는 수열이다.
* 2) 입력은 피보나치 수열의 총 항의 수 이다. 만약 7이 입력되면 1 1 2 3 5 8 13을 출력하면 된다.
*
* @입력설명: 첫 줄에 총 항수 N(3<=N<=45)이 입력된다.
* @출력설명: 첫 줄에 피보나치 수열을 출력합니다.
*
* @입력예제1: 10
* @출력예제 1 1 2 3 5 8 13 21 34 55
*
* */
배열로 하였을때 방법
public class 피보나치수열{
public int[] solution(int n){
int[] answer = new int[n];
answer[0] = 1;
answer[1] = 1;
for(int i=2; i<n; n++){
answer[i] = answer[i-2]+answer[i-1];
}
return answer;
}
public static void main(String[] args){
피보나치수열 T = new 피보나치수열();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
for(int x:T.solution(n)) System.out.println(x+" ");
}
}
배열로 쓰지말아야 하는 조건이 있을때
public class 피보나치수열{
public void solution(int n){
int a=1, b=1, c;
System.out.println(a+" "+b+" ");
for(int i=2; i<n; i++){
System.out.println(c+" ");
a=b
b=c
}
}
public static void main(String[] args){
피보나치수열 T = new 피보나치수열();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
T.solution(n);
}
}
728x90