계차수열 > 퀴즈게시판

퀴즈게시판

답을 맞히시면, 문제를 내신 회원님이 채택을 해드립니다.
채택은 '좋아요'와 같습니다.

계차수열 정보

계차수열

본문

1 , 1, 2, 3, 5, 8, 13, 21........

위와 같이 앞 2개 숫자의 합이 다음 숫자가 됩니다.

이런 수열을 계차수열이라고 하죠.

계차수열의 n번째 항의 숫자를 구하는 함수를 만드시오


반드시 혼자 힘으로 풀것 (검색 절대 안됨)




  • 복사

댓글 6개

function gaecha($n){
static $gae;

$gae[0]=0;
$gae[1]=1;

$gae_count=count($gae);

for($i=$gae_count;$i<=$n;$i++){
$gae[$i]=$gae[$i-1]+$gae[$i-2];
}

return $gae[$n];
}

for($i=0;$i<10;$i++){
echo gaecha($i).", ";
}

요즘 컴은 빠르니까요~~ ㅋㅋ

여러번 쓸 때 약간의 성능 향상을 보여줄수 있도록도 했음 ㅋㅋ..
  • 채택 0
리커전 함수는 정말 작성하면서도 머리가 아프다는...
근데 벌써 끝났군요.. 작성한게 아까워서 남깁니다.

function order_num($c, $n1 = 0, $n2=1) {
    if($c < 2) return $n1 + $n2; //리커전 종료조건
    return order_num(--$c, $n2, $n1 + $n2);
}

echo "1 order = ".order_num(1)."<br>";
echo "2 order = ".order_num(2)."<br>";
echo "3 order = ".order_num(3)."<br>";
echo "4 order = ".order_num(4)."<br>";
echo "5 order = ".order_num(5)."<br>";
echo "6 order = ".order_num(6)."<br>";
echo "7 order = ".order_num(7)."<br>";
echo "8 order = ".order_num(8)."<br>";
echo "9 order = ".order_num(9)."<br>";
echo "9 order = ".order_num(10)."<br>";
  • 채택 0
© SIRSOFT
현재 페이지 제일 처음으로