【Java】フィボナッチ数列を出力してみた

f:id:hira98:20190609203714p:plain

【結論】

  • 数列を求める処理も、変数を効率よく使うことで配列を使うことなく実装できる。

【目次】

フィボナッチ数列とは

フィボナッチ数列」とは,「前の2つの数を加えると次の数になる」という数列です。 ただし,1番目と2番目の数は両方とも1です。 1,1, 1+1=2 ですから,3番目の数は2になります。

引用:フィボナッチ数列と中学入試問題

実行イメージ

引数として渡した値までのフィボナッチ数t列を求めます。

f:id:hira98:20190609203735p:plain

ロジックの考え方

下図より、N回目の値を求めるのに必要なエリアは3つであることが分かります。

f:id:hira98:20190609203745p:plain

N回目の計算に必要なエリア3つをN1,N2,3で表し、N回目での処理をさらに詳しく表したのが下図です。

下図より、N回目では「N3の値を求める」「N+1回目の計算に合わせてN2とN3を移動する」の2つの処理を行う必要がわかります。

f:id:hira98:20190609203756p:plain

さらに、N回目で行う処理は下図の①〜③の手順に従って行うことで変数を効率よく使い回すことができます。

f:id:hira98:20190609203808p:plain

作成したプログラム

さいごに

1日でブログ5記事作成は疲れる。。