我编写了计算用户输入数字的阶乘的代码,但任何超过 12 的数字!我得到了错误的号码并且超过了 16!我得到负数。这是什么原因?有解决方案吗?
import java.util.Scanner;
class Factorial {
public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
Integer input = keyboard.nextInt();
int fact = 1;
for (int i = 1; i <= input; i++) {
fact = fact * i;
}
System.out.println(fact);
keyboard.close();
}
}
FFIVE
相关分类