-8

階乗を計算する Java での再帰的メソッドのコーディング。残念ながら、それは機能していません。アスタリスクで囲んだ 2 つのパラメーターが原因であると思われます。それらはそこに属する正しいパラメーターですか? または、それらを別のものに変更する必要がありますか?その理由は?

public fact(n)
{
   return this.factHelp(n, ***n+1*** );
}

private factHelp(n, result)
{
   if (n == 0)
      return result;
   else
      return this.factHelp(n – 1, ***result***);
}
4

1 に答える 1

2

このコードはコンパイルされません。

  1. これらのメソッドの両方で戻り値の型がありません。public int fact...代わりに使用する必要がありますpublic fact...
  2. パラメータに型がありません。おそらくfact(int n)代わりにあるはずですfact(n)
  3. これを行うために 2 つの関数は必要ありません。必要に応じて 2 つ使用できますが、不要であることをお知らせしたかっただけです。
  4. さらにヘルプを得るには、おそらく「再帰階乗アルゴリズム」をグーグルで検索する必要があります。
于 2013-09-13T20:27:24.920 に答える