1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
function prime (n) {
var n = parseInt(n) || 100;
var arr = [];
var obj = {};
for(var i = 1;i <= n;i++){
obj.i = [];
for(var j = 1;j <= i;j++){
if(i%j === 0){
obj.i.push(j);
}
}
if(obj.i.length <= 2){
arr.push(i);
}
}
return arr;
}
console.log(zhishu(100));
思路: 质数是只能被1和自己整除的整数.能通过被整除的次数来判断是否是质数.
课程上的方法:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function prime (n) {
var arr = [];
var count = 0;
for(var i = 2;i <= n;i++){
for(var j = 1;j <= Math.sqrt(i); j++){
//这里是有算法存在,能减少循环次数.
if(i%j === 0){
count++;
}
}
if(count == 1){
arr.push(i);
}
count = 0;
}
return arr
}