次のコードで例外が発生しないのはなぜですか? このコードを実行した後、test.fact(t.java:32) No Compile-Time Error was found で言及されている無限ループを取得しています。
class test
{
int fact(int m) throws Exception
{
if (m==1)
{
return 1;
}
else
return (fact ((m-1)*m));
}
}
class main
{
public static void main(String ar[]) throws Exception
{
test t = new test();
System.out.println(t.fact(5));
}
}
たとえば、私が使用していると言いながら
return(a+b);
それは正常に実行され、エラーを表示する再帰の問題は何ですか???