2 回答
TA贡献1836条经验 获得超13个赞
这应该有效。只需循环数字。
var input = prompt("What number would you like me to give you the factorial of?");
if (input > 0) {
var answer = 1;
var string = input + " =";
for (var i = input; i >= 1; i--) {
answer *= i;
string += " " + i
if (i != 1) {
string += " x"
}
}
console.log(string)
console.log("The factorial of " + input + " is " + answer)
} else {console.log("Invalid input! Program stopped.")}
Java(假设输入在变量中input):
if (input > 0) {
int answer = 1;
String stringAnswer = input + " =";
for (int i = input; i >= 1; i--) {
answer *= i;
stringAnswer += " " + i
if (i != 1) {
stringAnswer += " x"
}
}
System.out.println(stringAnswer)
System.out.println("The factorial of " + input + " is " + answer)
} else {System.out.println("Invalid input! Program stopped.")}
TA贡献1831条经验 获得超4个赞
您可以检查数字是否小于 0 否则计算阶乘
let x = prompt('Please enter a positive integer');
if (x < 0) {
console.log('invalid Input! Programmed Stop')
} else {
let val = 1;
for (let k = 1; k <= x; k++) {
val *= k
}
console.log(val)
}
添加回答
举报