javascript - isPrime 函数 - 检查该 num 是否为素数 - Javascript
问题描述
我想使用prompt()从用户那里获取一个值,并检查这个值是否是素数函数必须命名为isPrime并且有一个参数命名为num 我已经编写了代码但结果是 => 0 '不是素数- 1 不是素数并且3 或 4 或 5 或 6 或 7 或 8 或 ..... 在这里是素数我需要帮助来解决这个错误
let insertedValue = prompt("enter your value" , "");
for (var i = 2; i < insertedValue; i++) {
console.log(i);
}
const isPrime = (num) => {
if (num == 0 || num == 1) {
alert(`${num} isn't a prime number`);
} else if (num / 1 == num && num / num == 1 && num % i == 0) {
console.log(`${num} isn't a prime number`);
} else if (num / 1 == num && num / num == 1 && num % i != 0) {
console.log(`${num} is a prime number`);
}
}
isPrime(insertedValue);
解决方案
2
您可以循环检查该数字是否可以被从到该数字的平方根的任何整数整除。如果不是,则该数为质数。
let insertedValue = +prompt("enter your value" , "");
const isPrime = (num) => {
if(num <= 1) return false;
for(let i = 2; i * i <= num; i++)
if(num % i === 0) return false;
return true;
}
alert(isPrime(insertedValue) ? `${insertedValue} is a prime number`
: `${insertedValue} isn't a prime number`);
推荐阅读
- symfony - Symfony 4 - 依赖注入是如何工作的
- javascript - 将 request.post 中的 body(html) 响应保存/使用到 nodejs 中的全局变量中
- pandas - 应用函数在嵌套函数中不起作用
- c# - 如何将 UTF-8 xml 转换为 SQL xml?
- python - Flask restx 模型嵌套通配符字典
- php - 触发器数据库中程序的多次执行阻止了 LARAVEL 模型
- service - systemd 服务将标准输出重定向到自定义文件名
- java - NetBeans 中的调试器输出
- c# - EF Core:找不到实体类型属性的支持字段,并且该属性没有 getter
- reactjs - 使用 SVG 的自定义 Material-UI 按钮?