3! LOOPJavaで出力が必要
を使用せず= 3 = 6
* 2 * 1は、ありがとう!
下記のMy機能:
public static int factorial(int n)
{
if ((n == 1) || (n == 0))
return 1;
else
return(n * factorial(n-1));
}
3! LOOPJavaで出力が必要
を使用せず= 3 = 6
* 2 * 1は、ありがとう!
下記のMy機能:
public static int factorial(int n)
{
if ((n == 1) || (n == 0))
return 1;
else
return(n * factorial(n-1));
}
次のような階乗メソッドに渡されたパラメータの値を印刷することができます。
は、関数を作成:
public static int factorial(int n) {
System.out.print(n); // here
if (n > 1) System.out.print("*"); // and here
if ((n == 1) || (n == 0))
return 1;
else {
return (n * factorial(n - 1));
}
}
が生成されます
3!=3*2*1=6
すごくありがとう! :) –
これはOPの直ぐ問題を解決するかもしれませんが、コードは再使用されず、一度しか呼び出せないので、ユーザー入力コードをコンストラクタに入れるのは悪い習慣です。なぜ、コンストラクタで例外が発生したとしたら、JVMはオブジェクトの初期化を完了しますが、ここでは階乗は正しく作成されませんでした。そして、コンストラクターを2度目に呼び出すことはできません。 –
@OPここでティムに聞いてください。コメントをいただき、ありがとうございます。 – GurV
グローバル変数(StringBuffer)を使用して、階乗法から数値を追加することができます。印刷時にこの変数をmainメソッドから使用します。
ようこそスタックオーバーフロー!宿題の助けを求めているようです。それ自体に問題はありませんが、これらのことを守ってください(http://meta.stackoverflow.com/questions/334822/how-do-i-ask-and-answer-homework-questions/338845#338845)、それに応じて質問を編集してください。 –
再帰的な階乗法が正しいように見えます。しかし、奇妙なイベントの中で、あなたは 'FF'コンストラクタからユーザ入力を取得することに決めました。これは珍しいことではありません。 –
何を求めているのか分かりません。現在はループがなく、再帰があります。 – luk2302