C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#で再帰を使用して数値の桁の合計を見つける方法は?


再帰を使用して桁の合計を取得するには、合計を計算するメソッドをC#で設定します。

static int sum(int n) {
   if (n != 0) {
      return (n % 10 + sum(n / 10));
   } else {
      return 0;
   }

上記のメソッドは合計を返し、入力された数値が0に等しくなくなるまで合計をチェックします。

再帰呼び出しは、すべての再帰呼び出しの桁の合計を返します-

return (n % 10 + sum(n / 10));

完全なコードを見てみましょう-

using System;
class Demo {
   public static void Main(string[] args) {
      int n, result;
      n = 22;
      Console.WriteLine("Number = {0}", n);
      result = sum(n);
      Console.WriteLine("Sum of digits = {0}", result);
   }
   static int sum(int n) {
      if (n != 0) {
         return (n % 10 + sum(n / 10));
      } else {
         return 0;
      }
   }
}

出力

Number = 22
Sum of digits = 4

  1. Pythonを使用して自然数の合計を見つける方法は?

    whileループを使用すると、変数iの値を1ずつ連続してインクリメントし、累積的に追加できます。 s,i=0,0 n=10 while i<n:    i=i+1    s=s+i print ("sum of first 10 natural numbers",s) forループは、自然数の範囲をループして累積的に加算するためにも使用されます。 s=0 for i in range(11):    s=s+i print ("sum of first 10 natural numbers&

  2. Pythonで再帰を使用して数の階乗を見つける方法は?

    数値の階乗は、1からその数値までのすべての数値の積です。 関数がそれ自体を呼び出す場合、その関数は再帰関数と呼ばれます。 次のプログラムでは、factorial()関数は1つの引数を受け入れ、値が1に達するまで値を1つ減らして、それ自体を呼び出し続けます。 例 def factorial(x):     if x==1:         return 1     else:         return x*factorial(x-1) f=factorial(5) pr