【C#】再帰について

この記事ではC#を使った再帰プログラムの例を取り上げていきたいと思います。

目次

再帰とは

再帰とはプログラムの実行中に自分自身を呼び出すことができる性質のことです。

再帰とは繰り返しという意味。

再帰のことをリカーシブリカージョンとも言います。

再帰を使ったC#プログラムの例

class RecursiveSample
{
    // ★再帰関数
    void Recursive(int num)
    {
        if(num == 1)
        {
            return;
        }
        else
        {
            Recursive(num - 2);
            Console.WriteLine(num);
        }
    }

    static void Main(string[] args)
    {
        RecursiveSample recursive = new RecursiveSample();

        // ★再帰関数を実行
        recursive.Recursive(5);

       // 実行結果 35
    }
}

4行目のRecursiveメソッドが再帰を表しています。

12行目に

 Recursive(num - 2);

とありますが、Recursiveメソッドの中でRecursiveメソッドを呼び出しています。

このように自分自身を呼び出しているので再帰といえます。

Recursiveメソッドを使用しているのが22行目です。

recursive.Recursive(5);

引数に5が入っています。

もう一度Recursiveメソッドを見てみましょう。

  void Recursive(int num)
    {
        if(num == 1)
        {
            return;
        }
        else
        {
            Recursive(num - 2);
            Console.WriteLine(num);
        }
    }

引数が1であれば、return。そうでなければ引数-2。

その結果をコンソールに出力となっています。

numの値が1になるまでRecursiveメソッドを実行しています。

こちらの実行結果は3 5となります。

おわりに

いかがだったでしょうか。

今回は再帰プログラムについて説明しました。

再帰についてわからない方はぜひこの記事を参考にしていただければ幸いです。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

電気制御設計→ITエンジニア
前職は電気系のエンジニアで物流倉庫などの設備を動かしていました。
現在はITエンジニアとして開発に従事。
業務では主にUnity、C#、.NETを利用。
現在、UnityとC#を用いて業務用スマホアプリを開発中。

コメント

コメントする

目次