제목 : Re : 피보나치 수열...ㅠㅠ
글번호:
|
|
710
|
작성자:
|
|
박찬일
|
작성일:
|
|
2008/03/04 오전 10:16:00 (2008/03/04 오전 10:24:00 수정)
|
조회수:
|
|
4127
|
int sum = 0;
int p = 1,f=1,k=1;
for (int i = 0; i <12 ;i++)
{
if(i == 0)
{
sum += f + p;
Console.Write(f+ " + " + p );
}
else
{
f = k; --> 전 sum한 수 가져옴
k = p; --> 이번에 합할 수 가져옴
p = f + p; --> 전 sum 수 + 이번에 합할수
sum += p;
Console.Write(" + " + p );
}
}
Console.WriteLine("\b\b\b = " + sum);
결과값 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 + 144 + 233 = 609
흠..잠깐 검색해보니..피보나치 수열이.. 1 + 1 = 2 , 1 + 2 =3 , 2 + 3 = 5 , 3 + 5 = 8...... 이런거 같던데...맛나 모르겟지만..참고하세용...
On 2008-03-03 오후 8:15:00, '홍준기' wrote:
------------------------------------------------------------
>int sum = 1;
>int f = 1, p = 1;
>for (int i = 1; i <12 ; i++)
> {
> p = f;
> sum += p;
> Console.Write(p + " + ");
> }
>Console.WriteLine("\b\b\b = " + sum);
>
>이런식으로 1+1+2+3+.....+89 = 232
>라고 출력을 시켜야 하는데
>sum/ f / p 등등 변수 지정/치환 하나도 이해가 안갑니다 ㅠㅠ
>완전 초짜인데요 강의하시는 분도 어려울거라고 하는데... 간략하게라도 설명 부탁드려요ㅠㅠ
------------------------------------------------------------
|
hdotnet
2008-03-04 오후 5:45:43
|
쉽게 말해 1항 2항의 값이 3항의 값이 되는 것이 비보나치 수열이구욤, 3항을 구하고 나면 다시 2항은 1항이 되고 3항은 2항이 되어 계산 돼야 하잖아여 그래서 자리 바꾸기 로직을 통해서 자리를 바꾸고 다시 입력된 1항, 2항의 값으로 3항의 값을 계속 구해가는 것이 가장 간단한 비보나치 알고리즘 인것 같아요... 알고리즘은 정보처리기사 책이나 동영상을 보면 참 상세히 알기쉽게 나와있어욤 동영상 강의를 강추합니다.... 부디 도움이 조금이나마 되길 바래용~~ ^^
|
|
|
choiyw2
2008-03-06 오전 8:24:40
|
H -> 뷁
|
|
|
hdotnet
2008-03-06 오후 9:30:57
|
H -> 뷁 ==> 이건 구타유발 알고리즘이라고 아주 질이 나쁜 사람이 쓰는 로직이에욤... 강력 비추합니다...
|
|
|
|