0
0

More than 3 years have passed since last update.

Pythonでフィボナッチ数の計算

Last updated at Posted at 2021-02-13

はじめに

僕がやりたいのはPythonでフィボナッチ数の計算をすることです

実行環境

僕の実行環境です
Ubuntu: 20.04.2 LTS(64-bit)
Thonny: 3.2.7
Python: 3.8.5(64-bit)

フィボナッチ数とは

フィボナッチ数をWikipediaで見てみると[1]

概要
フィボナッチ数列(フィボナッチすうれつ、(英: Fibonacci sequence) ($F_n$) は、次の漸化式で定義される:

F_0 = 0,\\
F_1 = 1,\\
F_{n+2} = F_n + F_{n+1} (n ≥ 0)\\

第0~21項の値は次の通りである:
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, …(オンライン整数列大辞典の数列 A000045)
1202年にフィボナッチが発行した『算盤の書』(Liber Abaci) に記載されたことで「フィボナッチ数」と呼ばれているが、それ以前にもインドの学者であるヘーマチャンドラ (Hemachandra) が韻律 の研究により発見し、書物に記したことが判明している。

とありますが、簡単に言うと

1,1,2,3,5,8,13,21,34,55,89,144,etc・・・

のように、前の数とその前の数を足していった数のことです

スクリプト

前の数をa、前の前の数をbとすると、

total_num = 0
a = 1
b = 1
e = 8
while e != 0:
    print(str(total_num)+','+str(a),end=',')
    total_num += a
    a += b
    b += a
    e -= 1
print('etc・・・')
#0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,etc・・・

total_numとaがフィボナッチ数として出力されます
eの部分を変えれば出てくるフィボナッチ数が増えたり減ったりします

最後に

間違っている点や改善出来るところがあればコメント欄でお知らせください
よろしくお願いします

1:Wikipedia

0
0
11

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
0