第一种方法:

function func(num){
   if(num <= 1){
    return false
    }
   var n = 2
   while(n < num){
      if(num%n == 0){
         return false
      }
      n += 1 
   }
   return true
}
for(var i = 0;i<10001;i++){
   if(func(i)){
   console.log(i)
   }
}

=表示赋值;==表示值是否相等;===表示类型是否一样

第二种方法:(去除偶数)

function func(num){
   if(num <= 1 || num%2 ==0){
    if(num ==2){
       return true
    }
    return false
}
   var n = 3
   while(n < num){
      if(num%n == 0){
         return false
      }
      n += 2  //去除了偶数,直接加2到奇数
   }
   return true
}
for(var i = 0;i<10001;i++){
   if(func(i)){
   console.log(i)
   }
}

第三种方法:

var count = 0;
for (var i = 2; i <= 10000; i++) {
    for (var j = 2; j <= i; j++) { //第二个循环只要结束了,那么j就重新等于2
        if (i % j == 0) {
            if (i != j) {
                break;
            } else {
                console.log(i);
                count++;
            }
        }
    }
}
console.log("10000以内的质数有:" + count + "个");
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐