我试图在Java中使用递归构建以下字符串。预期产出为:尝试使用Java中的递归构建字符串
4! = 4!
= 4 * 3!
= 4 * 3 * 2!
= 4 * 3 * 2 * 1!
= 4 * 3 * 2 * 1 * 0!
这是我的阶乘方法:
public static String factorial(int n, int count, String equation)
{
if (n == 0) {
return equation += (n + "!");
} else {
equation += (n - count);
return factorial(n - 1, count, equation);
}
}
我输入下面的输入在我main
方法: “”
System.out.print(factorial(4, 0, ""));
目前,它打印出字符串我还没有很多的递归工作。我究竟做错了什么?
调用'System.out.print(factorial(4,0,“”));' – erencan
'equation + =(n - count)的期望输出是什么;'你不是构建其余的在你的字符串中添加语句 - 当你想要类似的东西时,你只需要添加一个数字(比如'4')。('4 +' –
不确定你试图用这个析因程序达到什么目的,但是在数学上,n!equates到'n X(n-1)X ... 1'。例如4!= 4 X 3 X 2 X 1.然而,你正在做4 + 3 + 2 + 1. – VHS