工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C++ 再帰

C++ 再帰

このチュートリアルでは、C++ の再帰関数とその動作について例を使って学びます。

自分自身を呼び出す関数は、再帰関数と呼ばれます。そして、この手法は再帰として知られています。


C++ での再帰の働き

void recurse()
{
    ... .. ...
    recurse();
    ... .. ...
}

int main()
{
    ... .. ...
    recurse();
    ... .. ...
}

下の図は、再帰が自分自身を何度も呼び出すことによってどのように機能するかを示しています。

<図>

再帰は、何らかの条件が満たされるまで続きます。

無限再帰を防ぐには、if...else ステートメント (または同様のアプローチ) を使用して、1 つのブランチが再帰呼び出しを行い、もう 1 つのブランチがそうでない場合に使用できます。


例 1:再帰を使用した数値の階乗

// Factorial of n = 1*2*3*...*n

#include <iostream>
using namespace std;

int factorial(int);

int main() {
    int n, result;

    cout << "Enter a non-negative number: ";
    cin >> n;

    result = factorial(n);
    cout << "Factorial of " << n << " = " << result;
    return 0;
}

int factorial(int n) {
    if (n > 1) {
        return n * factorial(n - 1);
    } else {
        return 1;
    }
}

出力

Enter a non-negative number: 4
Factorial of 4 = 24

階乗計画の働き

<図>

ご覧のとおり、factorial() 関数は自分自身を呼び出しています。ただし、呼び出しごとに n の値を減らしました 1まで . nの場合 1 未満です 、factorial() 関数は最終的に出力を返します。


再帰の長所と短所

以下は、C++ で再帰を使用することの長所と短所です。


C++ 再帰の利点


C++ 再帰の欠点


C言語

  1. C++ 演算子
  2. C++ コメント
  3. C++ クラス テンプレート
  4. C - 再帰
  5. C++ の概要
  6. C++ 定数/リテラル
  7. C++ の演算子
  8. C++ の数値
  9. C++ リファレンス
  10. C++ テンプレート
  11. C++ プリプロセッサ