#include <stdio.h>
/* フィボナッチ数列の第n項目を求める再帰関数 */
int fibo(int n)
{
/* 終了条件 */
if(n == 0 || n == 1) {
return 1;
}
/* 再帰呼び出し */
return fibo(n - 1) + fibo(n - 2);
}
int main(void)
{
int i;
/* 0~9を引数として呼び出す */
for(i = 0; i <= 9; i++) {
printf("fibo(%d) = %d\n", i
, fibo
(i
)); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgovKiDjg5XjgqPjg5zjg4rjg4Pjg4HmlbDliJfjga7nrKxu6aCF55uu44KS5rGC44KB44KL5YaN5biw6Zai5pWwICovCmludCBmaWJvKGludCBuKQp7CiAgICAvKiDntYLkuobmnaHku7YgKi8KICAgIGlmKG4gPT0gMCB8fCBuID09IDEpIHsKICAgICAgICByZXR1cm4gMTsKICAgIH0KCiAgICAvKiDlho3luLDlkbzjgbPlh7rjgZcgKi8KICAgIHJldHVybiBmaWJvKG4gLSAxKSArIGZpYm8obiAtIDIpOwp9CgppbnQgbWFpbih2b2lkKQp7CiAgICBpbnQgaTsKCiAgICAvKiAw772eOeOCkuW8leaVsOOBqOOBl+OBpuWRvOOBs+WHuuOBmSAqLwogICAgZm9yKGkgPSAwOyBpIDw9IDk7IGkrKykgewogICAgICAgIHByaW50ZigiZmlibyglZCkgPSAlZFxuIiwgaSwgZmlibyhpKSk7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=