Javaプログラミング学習サイト ゆるゆるプログラミング

・フィボナッチ数列

フィボナッチ数列は、イタリアの数学者レオナルド・フィボナッチが考えた「ウサギ算」から導かれる数列です。この数列は、自然界の現象に数多く出現し、ヒマワリの種の配列にもフィボナッチ数列の法則が働いているといわれています。それでは、フィボナッチ数列とはどうのようなものかを見ていきましょう。

n番目のフィボナッチ数をFnで表すと、Fnは再帰的に

  F0 = 0
  F1 = 1
  Fn+2 = Fn + Fn+1 (n≧0)

で定義されます。

この式をJavaのプログラムにしたものが以下です。

Fibonacchi.java ← クリックしてダウンロードページに移動
001:    public class Fibonacchi {
002:    	public static void main(String[] args) {
003:    		int f0, f1, fn;
004:    
005:    		f0 = 0;
006:    		System.out.println( f0 );
007:    
008:    		f1 = 1;
009:    		System.out.println( f1 );
010:    
011:    		for ( int i = 2; i <= 10; ++ i ) {
012:    			fn = f0 + f1;
013:    			System.out.println( fn );
014:    			f0 = f1;
015:    			f1 = fn;
016:    		}
017:    	}
018:    }

Fibonacchiを実行

C:\talavax\javasample>java Fibonacchi

n=0から10のフィボナッチ数を表示します。

Fibonacchi.javaの出力結果

0
1
1
2
3
5
8
13
21
34
55

ここからは、このソースコードを上から順番に解説していきます。

001:    public class Fibonacchi {

クラス名を、Fibonacchiとしています。

002:    	public static void main(String[] args) {

このmainメソッドからプログラムを実行します。

003:    		int f0, f1, fn;

このプログラムで使う変数を宣言しています。

005:    		f0 = 0;
006:    		System.out.println( f0 );
007:    
008:    		f1 = 1;
009:    		System.out.println( f1 );

F0とF1の値をそれぞれ変数に代入し、表示しています。

011:    		for ( int i = 2; i <= 10; ++ i ) {
012:    			fn = f0 + f1;
013:    			System.out.println( fn );
014:    			f0 = f1;
015:    			f1 = fn;
016:    		}

F2からF10の値を計算した結果をFnに代入し、表示しています。

■関連コンテンツ

ウサギ算 ウサギの増え方?
フィボナッチ数列(再帰) フィボナッチ数列
数学関数について 数学関数について解説
黄金比 最も美しい比率
繰り返し処理に使用するfor文について解説-画像

for文

繰り返し処理に使用するfor文をJavaのソースコードを使って説明しています。

四則演算(足し算/引き算/掛け算/割り算)について-画像

計算結果の表示

足し算(加法)/引き算(減法)/掛け算(乗法)/割り算(除法)の使い方を説明

■新着情報

2020.10.28 1からNの和 1+2+3+ … +N=?
2020.10.21 画像の上下反転 画像を上下反転する方法
2020.10.19 指定色の画素数取得 指定RGBの画素数は何個?
2020.10.13 2値化 その2 2値のBMP画像を作成
2020.10.07 3辺の長さで三角形かを判定 3辺abcで三角形が作れるか?
2020.10.06 画像のミラー反転 画像をミラー(鏡)反転する方法
2020.09.03 お札とコインの数 必要なお札と硬貨の枚数?

■広告

フィギュア予約最大25%OFF+ポイント5%還元!ホビーサーチ

~約8,000名の受講生と80社以上の導入実績~ 企業向けプログラミング研修ならCodeCamp

日本最大級ショッピングサイト!お買い物なら楽天市場

Topへ