数字的阶乘是从1到该数字的所有数字的乘积。例如,
5的阶乘等于1 * 2 * 3 * 4 * 5 = 120 。
正数n的阶乘由下式给出:
factorial of n (n!) = 1 * 2 * 3 * 4.....n
负数的阶乘不存在, 0的阶乘为1 。
我们将使用for
循环和if...else if...else
语句来查找数字的阶乘。
要了解更多信息,请访问:
- JavaScript if … else if … else语句。
- JavaScript for循环。
示例:查找阶乘
// program to find the factorial of a number
// take input from the user
let number = parseInt(prompt('Enter a positive integer: '));
// checking if number is negative
if (number < 0) {
console.log('Error! Factorial for negative number does not exist.');
}
// if number is 0
else if (number === 0) {
console.log(`The factorial of ${number} is 1.`);
}
// if number is positive
else {
let fact = 1;
for (i = 1; i <= number; i++) {
fact *= i;
}
console.log(`The factorial of ${number} is ${fact}.`);
}
输出
Enter a positive integer: 5
The factorial of 5 is 120.
在上面的程序中,提示用户输入一个整数。然后if...else if...else
语句用于检查数字的条件。
- 当用户输入一个负数时 ,将显示一条错误消息。
- 当用户输入0时 ,阶乘为1 。
- 当用户输入正整数时,将使用
for
循环将1迭代到用户输入的数字以查找阶乘。 - 每个数字相乘并存储在
fact
变量中。