**结案。**此问题不可复制或由打字错误引起。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。
27天前关门了。
改进这个问题
我是一个新的编码,所以我一直困惑我应该添加或删除我的代码。当我输入2的阶乘时,它也打印出阶乘1,当我只想打印出2的阶乘时。
import java.util.Scanner;
public class FactorialCalculator {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int i, fact = 1, number;
System.out.println("<------ Factorial Calculator ------>");
System.out.print("Enter a positive integer: ");
number = input.nextInt();
if (number <= 2) {
for (i = 1; i<=number; i++) {
fact = fact * i;
System.out.println("2! = 1 x 2 ");
System.out.println("The Factorial of 2 is: "+fact);
}
}
}
}
输出:
<------ Factorial Calculator ------>
Enter a positive integer: 2
The Factorial of 2 is: 1
The Factorial of 2 is: 2
1条答案
按热度按时间pobjuy321#
把你的打印语句从循环中去掉。
但您可能希望允许更大的值,而不仅仅是
2
. 别忘了两者0!
以及1!
等于1
.像这样试试。
我觉得你很困惑
<= 2
与>= 2
.<= 2
只允许值2, 1, 0, -1, etc
进入循环。你想要的是允许>= 2
或者2, 3, 4, ...