python3でほぼライブラリを使わないで、ちょっと書いてみた

フィボナッチ数列のあれ fibo.py

from decimal import *
# フィボナッチ数列の関数
def fibo(i):
    list_f = [1, 1]     # 初めの2つは指定しないといけない
    if i < 2:   #  1を入れると、2と一緒になるので避ける
        print('表示できません')
    else:
        while len(list_f) < i:  # i番目まで回す
         f_next = list_f[-1] + list_f[-2]     # 最後の次の数を決める

        list_f.append(f_next)  # 数値をリストに入れ込む
    print(str(i) + '番までのフィボナッチ数列は ', list_f)
    print(str(i) + '番目のフィボナッチ数は' + str(list_f[-1]))
    print('一つ前の数との比は、' + str(list_f[-2]) + ' : ' + str(list_f[-1]))
    getcontext().prec = 100
    print('少数で表すと ' + str(Decimal(list_f[-1])/Decimal(list_f[-2])) + '.........')
    print('数字を大きくすると、黄金比に近づきます!')

print('好きな数を入れてください')
n = input()
n = int(n)
print('あなたのフィボナッチ数列の情報を差し上げます')
fibo(n)

この記事が気に入ったらサポートをしてみませんか?