C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で最初の10個のフィボナッチ数を出力する方法を解説

フィボナッチ数列は、「前の2つの数の和が次の数になる」という規則性を持つ有名な数列です。この記事では、C#を使って最初の10個のフィボナッチ数(0, 1, 1, 2, 3, 5, 8, 13, 21, 34)をコンソールに出力する方法を、初心者にもわかりやすく解説します。

実装の基本的な考え方

最初の10個の数を表示するには、まず数列の出発点となる最初の2つの数を変数に設定します。フィボナッチ数列は0と1から始まるため、以下のように初期化します。

int val1 = 0, val2 = 1;

次に、forループを使って3つ目以降の数を計算していきます。ループ変数は2から9まで回し(合計10個になるように)、各繰り返しで「前の2つの数の和」を新しい値として求めます。

for(i = 2; i < 10; ++i) {
    val3 = val1 + val2;
    Console.Write(val3 + " ");
    val1 = val2;
    val2 = val3;
}

処理のポイント

  • val3 = val1 + val2; … 前の2つの値を足して次のフィボナッチ数を求めます。
  • val1 = val2; … 値をひとつずらします(古いval2が新しいval1へ)。
  • val2 = val3; … 計算した新しい値をval2に代入し、次の計算に備えます。

この「値をずらす」処理を繰り返すことで、数列を順番に生成できるのがポイントです。

完全なサンプルコード

以下は、最初の10個のフィボナッチ数を表示するC#プログラムの完全なコードです。

using System;
public class Demo {
    public static void Main(string[] args) {
        int val1 = 0, val2 = 1, val3, i, n;

        n = 10;

        Console.WriteLine("1st ten Fibonacci numbers:");
        Console.Write(val1 + " " + val2 + " ");

        for(i = 2; i < n; ++i) {
            val3 = val1 + val2;
            Console.Write(val3 + " ");
            val1 = val2;
            val2 = val3;
        }
   }
}

実行結果

このプログラムを実行すると、コンソールに以下のように出力されます。

1st ten Fibonacci numbers:
0 1 1 2 3 5 8 13 21 34

まとめ

C#でフィボナッチ数列を生成する基本は、最初の2つの値の初期化forループによる反復計算です。変数の値を順にずらしながら足し合わせていくシンプルなロジックなので、ループ処理の学習教材としても最適です。表示する個数を変更したい場合は、変数 n の値を変えるだけで対応できます。

  1. Pythonでフィボナッチ数列を出力する方法【初心者向けサンプルコード付き】

    フィボナッチ数列とは、各項が直前の2つの数の和になるという性質を持つ数列です。「1, 1, 2, 3, 5, 8, 13…」のように数字が並んでいくのが特徴です。この種の数列は、Pythonの繰り返し処理(ループ文)を使えば簡単に生成できます。 フィボナッチ数列を出力するサンプルコード 以下は、while文を使ってフィボナッチ数列の最初の10個の数値を出力するPythonプログラムです。 x=0 y=1 fibo=0 while fibo<10: fibo=fibo+1 z=x+y print(z) x,y=y,z 実行結果 上記のプログラムを実行すると、

  2. Pythonで画面に出力するには?print文の基本と使い方を解説

    Pythonで画面(標準出力)に文字や値を表示する最も基本的な方法は、print文を使うことです。>>> print Hello, world Hello, worldカンマ区切りで複数の項目を出力する同じ行に複数の項目をスペースで区切って表示したい場合は、項目の間をカンマで区切ります。>>> print Hello,, World Hello, Worldこの例では、どちらの文字列にもスペースは含まれていませんが、2つのオブジェクトの間にあるカンマによって、print文が自動的にスペースを挿入してくれます。さまざまなデータ型の出力print文は文字列だけで