前提
フィボナッチ数列のn番目の数字を計算する関数を再帰を用いずに定義したいです。
関数名:fibonacci_norec(n)
実現したいこと
非再帰のフィボナッチ数列関数を定義する。
発生している問題・エラーメッセージ
UnboundLocalError: local variable 'F_n' referenced before assignment
該当のソースコード
python
1def fibonacci_norec(n): 2 li = [1,1] 3 c = 0 4 if n == 1 or n == 2: 5 F_n = 1 6 else: 7 for i in range(2,n+1): 8 k = li[c] + li[c+1] 9 li.append(k) 10 c += 1 11 if c == n+1: 12 F_n = li[n-1] 13 break 14 return F_n
試したこと
ローカル変数がなぜ割り当てられていないのか条件分岐の条件を変えて実行してみましたが、結局わからないです。
補足情報(FW/ツールのバージョンなど)
jupyter notebook
回答2件
あなたの回答
tips
プレビュー