python 練習問題 練習コード

python

【Python】フィボナッチ数列の作り方【再帰的な方法の練習問題】

2019年6月22日

こんにちは。

 

今回は Python のうち関数に関する練習問題を行いたいと思います。

 

課題としては python を利用してフィボナッチ数列のコードを実装する内容となります。

フィボナッチ数列とは

  • 1番目の数は1
  • 2番目の数は1
  • 3番目以降の数値は「前の数値と前の前の数値の和」
» Wikioedia フィボナッチ数

 

以下が仕様になります。

 

 仕様

  • まず、フィボナッチ数列の関数を定義します。
  • 1番目、2番目の数は1にして、3番目以降の数は上記の様に「前の数値と、前の前の数値の和」とします。
  • while構文を使用して、また return を利用して再帰的な構文にしてください。
  • 「フィボナッチ数列のうち何番目の数値を表しますか」という入力を出来る様にしてください。
  • 入力した数値でフィボナッチ数列を計算する関数を実行してください。

ここで、「再帰的な関数」という言葉が出てきました。

再帰的な関数とは

再帰的な関数というのは、例えば fib_func(n) という関数が合った時に、return fib_func(n-1) という様に、その関数自体を用いて return に指定することを言います。

では早速コーディングしていきましょう。

 

コーディングできれば、以下の解説で確認してください。

実装の手順

python フィボナッチ数列 練習問題 練習コード 再帰法

関数を定義してwhile構文を用いて再帰的なコーディングを行います。

まず、フィボナッチ数列の関数を def fib_func(n): として定義します。

 

その次にwhile構文とif, elif, else を組み合わせてコーディングを行います。

In[]

ここで、while構文とif, elif, else の使い方について復習しましょう。

 

まずは、if, elif, else の違いに関する内容です。

 

if, elif, else の使い方は非常に頻用しますので、ここで一度上記のコードを確認しておいて下さい。

 

入力した値でフィボナッチ数列の値を計算する


あとは input を用いて「フィボナッチ数列のうち何番目の数値を表すか」という入力に対しての出力をさせるコーディングを行えば終了となります。

 

まとめ|pythonでフィボナッチ数列を作る

python フィボナッチ数列 練習問題 練習コード 再帰法

 

最終的な実装例としては以下の様になります。

In[]

実行例は以下の様になります。

Out[]

今回は python で再帰的な方法を用いてフィボナッチ数列を作りましたが、その他にもフィボナッチ数列の求め方には色々な作成方法があります。

 

そのほかの方法については以下のサイトが参考になりますので、ご参照ください。
» Pythonによるフィボナッチ数列の色々な求め方(一般項、反復法、再帰法)

今回は以上となります。


-python
-,

Copyright© Tommy blog  , 2020 All Rights Reserved.