JAVA/기초 프로그래밍
fibonnaci 피보나치 수열
웨이칭
2020. 5. 26. 17:47
fibonnaci 피보나치 수열
원리;
(1번째(a), 2번째(b) 수를 합한 숫자가 다음 숫자(c)가 됨-> 증권, 선물사에서 쓰임)
0 1 1 2 3 5 8 13 21 34
a b c (a+b=c)
a b c
~ ...
//loop 30 회정도가 지나면 에러가나서 long 으로 잡아줘야 함
w를 인덱스번호로 지정해주고 arrNum[w+2] = c; w++;
0번째와 1번째는 밖에다가 미리 a와 b값으로 초기화 해줌
long a, b, c;
long arrNum[] = new long[30];
int w = 0;
a = 0;
b = 1;
arrNum[0] = a;
arrNum[1] = b;
while(w < 28) { //30까지니까 28.
c = a + b;
arrNum[w + 2] = c;
//값을 갱신해준다
a = b;
b = c;
w++;
}
for (int i = 0; i < arrNum.length; i++) {
System.out.println(arrNum[i] + " ");
}
System.out.println();