プログラミングでアイデアを具現化したい

あらゆるものを具現化するためにプログラミングを始めました。主にC#

再帰処理


独習C# 第3版より

メソッドで自分自身を呼び出す事を再起という。
実行結果からわかるように、メソッドを深く呼び出し続けるため、
再帰を行う毎にスタック領域を占有していく。


    class Program {
        static void Main(string[] args) {
            Factorial f = new Factorial();
            Console.WriteLine(f.sum(10));
        }
    }
    class Factorial {
        //再帰的なメソッド
        public int sum(int n) {
            Console.WriteLine("nの値は{0}.", n);
            if (n == 1) {
                return 1;
            }
            else {
                int a = sum(n - 1);
                Console.WriteLine("nの値:{0} aの値:{1}.", n-1,a);
                return a + n;
            }
        }
    }

実行結果
f:id:tos5511:20160103012448j:plain


直近の人気記事
tos5511.hatenablog.com