0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Pythonで再帰をやってみた②(フィボナッチ数列)

Posted at

以前再帰を使った回文判定、Fractal図形の描画を行いましたが、今回は第2弾です。

#フィボナッチ数列

フィボナッチ数列とは、
1 1 2 3 5 8 13...
のように前2つの数字を足したものが次の項になるという数列です。
(例)第4項の3はその前2つの1と2の和
今回は再帰を使ってフィボナッチ数列の第n項を知るというプログラムを書きました。

def fibonacci(n):
    if n < 3:
        return 1
    else:
        return fibonacci(n-1) + fibonacci(n-2)

もし1項か2項なら1、それ以降は1つ前と2つ前の項に戻り、さらに1つ前、2つ前にもどるという形です。
少し分かりにくいですが、
n=5なら4項、3項の和が必要なので2,1項に戻って和を求めていきます。
これでn=10なら55、n=20なら6765となります(数が大きくなればなるほど時間がかかります)。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?