ゆるゆるプログラミング

・フィボナッチ数列

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

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の値をそれxぞれ変数に代入し、表示しています。

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に代入し、表示しています。

■関連コンテンツ

ウサギ算 ウサギ算について
数学関数について 数学関数について解説

■新着情報

2017.11.17 N値化 カラー画像をN値化する方法について解説
2017.11.16 最も近い値の取得 指定値に最も近い配列の値を取得する方法を解説
2017.10.02 アルファ値(透過) アルファ値(透過)について

■広告

法人向けのETC専用カード

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

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

Topへ