私はJavaを使い慣れていません。私はそれについていくつかの本を読んでいます。 私はこのコードの出力が生成方法を見つけ出すことはできません。このコードはどのようにコンパイラで実行されますか?
import java.util.*;
class myclass {
public static void main(String[] args) {
Scanner myScanner = new Scanner(System.in);
System.out.println(factorial(myScanner.nextInt())+"\n");
}
public static int factorial(int n) {
if (n==0) {
return 1;
} else {
int recurse = factorial(n-1);
int result = recurse*n;
return result;
}
}
}
誰もが、このステップバイステップの私のために説明していただけますか? 私はメインメソッドとScanner
クラスを理解していますが、入力時に8
のような整数を入力すると、私は40320
を出力します。
質問に正しくタグを付けてください。その後、デバッガを使用してコードを1行ずつ実行します。 –
あなたは[階乗関数](https://en.wikipedia.org/wiki/Factorial)に精通していますか? 8! 40320であり、これは期待される出力です。 – Michael