质数是一个只能被1和其自身整除的正整数。例如,2,3,5,7,11是第几素数。
示例:检查素数
// program to check if a number is prime or not
// take input from the user
const number = parseInt(prompt("Enter a positive number: "));
let isPrime = true;
// check if number is equal to 1
if (number === 1) {
console.log("1 is neither prime nor composite number.");
}
// check if number is greater than 1
else if (number > 1) {
// looping through 2 to number-1
for (let i = 2; i < number; i++) {
if (number % i == 0) {
isPrime = false;
break;
}
}
if (isPrime) {
console.log(`${number} is a prime number`);
} else {
console.log(`${number} is a not prime number`);
}
}
// check if number is less than 1
else {
console.log("The number is not a prime number.");
}
输出
Enter a positive number: 23
23 is a prime number.
在上面的程序中,提示用户输入数字。使用if...else if... else
语句检查用户输入的数字是否大于1 。
- 1既不是素数也不是合成数。
- 由于质数为正,因此排除了所有负数。
- 大于1的数字使用
for
循环进行测试。
for
循环用于迭代正数,以检查用户输入的数字是否可被正数整除( 2等于用户输入的数字减1 )。
条件number % i == 0
检查该编号是否可被除1以外的数字及其本身整除。
- 如果将余数评估为0 ,则该数字不是质数。
- isPrime变量用于存储布尔值: true或false 。
- 如果数字不是素数,则isPrime变量将设置为false 。
- 如果数字是质数,则isPrime变量保持为true 。