再帰を使った 2 つの数の加算

CCBeginner
オンラインで実践に進む

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

C 言語のプログラミングでは、再帰を使って 2 つの数を加算することができます。再帰は、終了条件が満たされるまで繰り返し自身を呼び出す関数です。この実験では、再帰を使って 2 つの数を加算する C プログラムを作成します。

main.c ファイルを開く

まず、~/project/ ディレクトリにある main.c ファイルを開きます。ここが私たちが C プログラムを記述する場所です。

コードを記述する

main.c ファイルに以下のコードを記述します。このコードは再帰を使って 2 つの数を加算します。

#include <stdio.h>

// 再帰を使って2つの数を加算する関数
int add(int m, int n)
{
    if(n == 0)
        return m;

    int y = add(m, n-1) + 1;
    return y;
}

int main()
{
    printf("Adding Two Numbers Using Recursion\n");

    int num1, num2, result;
    printf("Enter first number: ");
    scanf("%d", &num1);

    printf("Enter second number: ");
    scanf("%d", &num2);

    result = add(num1, num2);
    printf("Result is: %d", result);

    return 0;
}

コードを実行する

main.c ファイルを保存し、コードをコンパイルして実行します。2 つの数を入力するよう促されます。数値を入力した後、プログラムは 2 つの数の合計を表示します。

コードを理解する

add 関数は 2 つの整数型の引数 mn を受け取ります。n が 0 に等しい場合、m を返します。n が 0 に等しくない場合、引数が mn-1add 関数の結果に 1 を加えます。

main 関数はユーザーに 2 つの整数を入力するよう促し、それらを加算するために add 関数を呼び出し、結果を表示します。

コードを変更する

add 関数が数値を加算する方法を変更することで、コードを変更してみましょう。たとえば、1 を繰り返し加算する代わりに、2 または 3 を加算することができます。コードを試して、何が起こるか見てみましょう。

まとめ

この実験では、再帰を使って 2 つの数を加算する C プログラムを作成する方法を学びました。再帰はこのような問題を解くための強力なツールであり、プログラミングの武器として役立つ技術です。