C++で再帰(リカーション)のコードを書いてみた

code-2620118_640

C++で再帰(リカーション)のコードを書いてみました。リカーションとは、関数が自分自身を呼美出すというプログラミング手法です。イメージとしては、i=5の場合、5*rec(4)を計算します。ここでrec(4)=4*rec(3)、rec(3) = 3*rec(2), rec(2) = 2*rec(1), rec(1) = 1*rec(0), rec(0) = 1であることから、それぞれを計算すると、5*4*3*2*1*1 = 120が出力されます。

#include <iostream>
//再帰(recursion)
int rec(int i) {
if (i == 0) {
return 1;
}
else {
return i * rec(i – 1);
}
}

int main() {
printf(“5! is %d”, rec(5));
}

出力は以下の通りです。

5! is 120

やさしいC++ 第5版 (「やさしい」シリーズ)
高橋 麻奈
SBクリエイティブ
2017-06-14



ご面倒おかけしますが、たまにはクリックお願いします!

にほんブログ村 海外生活ブログ 海外移住へ
にほんブログ村

にほんブログ村 海外生活ブログへ
にほんブログ村