因此,我正在尝试制作一个程序,其中用户输入数字,计算机输出阶乘。我必须使用递归并具有1个类和1个客户端。
我的课是:
public class Factorial
{
public static int Factorial(int n)
{
if(n==1)
{
return 1;
}
else
{
return n*(Factorial(n-1));
}
}
}
我的客户是:
public class FactorialClient
{
public static void main()
{
Factorial n = new Factorial();
System.out.println(n.Factorial(4));
}
}
这些都可以编译并完全正常工作。但是,我试图为用户提供一种输入数字的方法,而不是在客户端内部输入数字的方法。请帮忙!
最佳答案
尝试这个。
public class FactorialClient
{
public static void main()
{
Scanner reader = new Scanner(System.in); // Reading from System.in
System.out.println("Enter a number: ");
int x = reader.nextInt();
Factorial n = new Factorial();
System.out.println(n.Factorial(x));
}
}