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

C#でフィボナッチ数列を生成・表示する方法

フィボナッチ数列とは、各項が直前の2つの項の合計になるという規則で構成される数列です。C#でフィボナッチ数列を求めるには、まず数列の最初の2つの数値を 01 に設定します。

int val1 = 0, val2 = 1, val3;

フィボナッチ数列の計算ロジック

次に、2からnまでの範囲でループ処理を行い、フィボナッチ数列を順番に求めていきます。数列内の各数値は、直前の2つの要素の合計として以下のように計算できます。

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

ループ内では、まず新しい値 val3val1val2 の合計として算出し、画面に出力します。その後、val1val2 の値を1つずつずらすことで、次の項の計算に備えます。

完全なサンプルコード

C#でフィボナッチ数列を表示するための完全なコードは以下の通りです。

using System;

public class Demo {
   public static void Main(string[] args) {
      int val1 = 0, val2 = 1, val3, i, n;
      n = 7;
      Console.WriteLine("Fibonacci series:");
      Console.Write(val1+" "+val2+" ");
      for(i=2;i<n;++i) {
         val3 = val1 + val2;
         Console.Write(val3+" ");
         val1 = val2;
         val2 = val3;
      }
   }
}

出力結果

Fibonacci series:
0 1 1 2 3 5 8

このプログラムでは、変数 n に 7 を設定しているため、フィボナッチ数列の最初の7つの項「0, 1, 1, 2, 3, 5, 8」が出力されます。最初の2つの値は事前に Console.Write() で表示し、残りの項をfor文で順次計算・出力するシンプルかつ効率的な実装となっています。n の値を変更すれば、任意の項数のフィボナッチ数列を簡単に表示できます。

  1. Pythonのラムダ式でフィボナッチ数列を生成する2つの方法

    フィボナッチ数列は、自然界の多くの現象を説明することでも知られる、非常に有名な数学的数列です。0と1から始まり、「直前の2項の合計」を次の項として加えていくことで数列が伸びていきます。本記事では、Pythonのラムダ式(無名関数)を使って、指定した個数のフィボナッチ数列を生成する2つの方法を紹介します。 方法1:sum関数とmap関数を組み合わせる まずはmap関数を使い、リストの各要素にラムダ関数を適用する方法です。リストのスライスで直前の2項を取り出してsumで合計し、その結果をリストに追加していきます。range関数で生成する項数を制御するのがポイントです。 サンプルコード def fi

  2. 【Python】フィボナッチ数列におけるkのn番目の倍数の位置を求める方法

    この記事では、「フィボナッチ数列の中に現れるある数の倍数」をテーマに、Pythonでの解法をサンプルコードとともにわかりやすく解説します。 問題の概要 整数 k と n が与えられたとき、フィボナッチ数列の中で k の n 番目の倍数が何番目の項として現れるかを求めます。 例えば「k = 4 の 5 番目の倍数」なら、フィボナッチ数列を順にたどりながら 4 の倍数になっている項を探し、そのうち 5 番目に該当する項の位置を出力します。 解法のポイント フィボナッチ数列を k で割った余りには周期性があるため、k の倍数となる項は等間隔で出現します。最初に k の倍数になった項の位置を i