js輸出100以內的質數
阿新 • • 發佈:2021-02-08
1、質數的定義
若一個整數,只能被1和自身整除,則這個數就是質數。
注意,1不是質數,也不是偶數。
2、判斷質數的方法
- 2.1 對一個整數n開平方,得到sqrt(n)
- 2.2 任取[2,sqrt(n)]裡的一個整數來除n,若能整除,說明n不是質數。若沒有一個整除的,則n是質數。
3、js語言實現質數判斷
//5.1) 判斷質數
function getPrimes(arr) {
return arr.filter(function (ele) {
if (ele == 1) {
return false;
}
for (var i=2; i<=Math.sqrt(ele); i++) {
if (ele % i == 0) {
return false;
}
}
return true;
});
}
//5.2) 初始化引數
var arr = [];
for (var x=1; x<=100; x++) {
arr.push (x);
}
var num = getPrimes(arr);
//5.3) 每行10個元素,進行列印
let line = [];
for (var i=0; i<num.length; i++) {
line.push(num[i]);
if ((i+1)%10 == 0){
console.log(line);
line = [];
}
}
//5.4) 手動驗證質數
var bRet2 = (num.toString() === [ 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].toString());
console.log("check ",bRet2)
效果如下: