质数是什么?
质数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
- 只能被1 和 自身 整除的数才叫质数
质数的特点
不能整除其他数字,所以它和1以及自身取余会等于0,但是不适用于其他数字。
代码如下:
function Zhi(n) {
// 判断一个数是否能被自身小的正整数(除开1和自身)整除.如果能整除则不是质数,否则反之.
for (var i = 2; i < n; i++) {
if (n % i == 0) {
return false;
}
}
return true
}
console.log(Zhi(4))
输出:false // 4不是质数 所以返回false
上边这个方法是判断是否是一个质数
那如何判断1到任意数之间的所有质数呢, 那就比较简单了
代码如下:
function zhiShu(num) {
var arr = [];
// 遍历任意数, 利用test方法判断遍历数是否为质数;如果是, 就加入数组;
for (var i = 2; i < num + 1; i++) {
if (Zhi(i)) {
arr.push(i);
}
}
return arr;
}
console.log(zhiShu(100)) //打印100之间的质数
输出:[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
网友评论