// 声明一个弹窗 可以获取数字
var num = prompt('请输入一个数字');
// 假设这个是质数
var a = true;
// 最小的的质数是 2 所以声明最小的 2
for (var i = 2; i < num; i++) {
// 判断 如果能被整除就是质数
if (num % i == 0) {
// 如果能被整除则取反a
a = false;
}
};
// 如果没有进入循环体 那么a=true
if (a) {
alert('是质数')
// 否则就是 false
// if(a==false) 可以不写
} else if (a == false) {
alert(num + '不是质数')
}
<script>
// 循环100内的数 质数最小的 是 2
for (var i = 2; i <= 100; i++) {
// 假设是质数
var a = true;
// 每一个数取余一下做判断
for (var j = 2; j < i; j++) {
// 判断能不能取余
if (i % j == 0) {
a = false;
}
}
// 如果是正常的就打印
if (a) {
console.log(j)
}
}
</script>
优化:使用 Math.sqrt()开方函数,可以提升性能
<script>
// 打印100以内质数
for (let i = 0; i <= 100; i++) {
let z = true;
// Math.sqrt(i) 开方函数 缩小取值范围 优化性能
for (let y = 2; y <= Math.sqrt(i); y++) {
// 如果取余为0 就不是质数
if (i % y == 0) {
z = false;
// break;
}
if (z) {
// console.log(this.z)
console.log(i)
}
// console.log(z)
}
}
</script>