使用JavaScript中的函数打印从1(其中1是素数)到n的素数,并将它们附加到数组中

使用JavaScript中的函数打印从1(其中1是素数)到n的素数,并将它们附加到数组中,javascript,arrays,primes,Javascript,Arrays,Primes,我有一个程序,在其中我必须打印从1到n的所有素数,然后将它们附加到一个数组中。我使用solve函数执行此操作,但数组仍然为空。我想问为什么会这样 function solve(args){ var m=new Array(); for(let a=1;a<=args;a++){ for(let b=1;b<=Math.sqrt(a);b++){ if(a%b==0){ break;

我有一个程序,在其中我必须打印从1到n的所有素数,然后将它们附加到一个数组中。我使用solve函数执行此操作,但数组仍然为空。我想问为什么会这样

function solve(args){
    var m=new Array();
    for(let a=1;a<=args;a++){
        for(let b=1;b<=Math.sqrt(a);b++){
            if(a%b==0){
                break;
            }
            m.push(a);
        }
    }
}
函数求解(args){
var m=新数组();
对于(让a=1;a检查此代码段

solve(args) {
   var primeNumbers = [];
   for(var i=1; i<=args ;i++){
      var isPrime = true;
         for(var j=2; j<i; j++){
            if(i%j === 0){
                isPrime = false;
            }
         }
      if(isPrime === true){
         primeNumbers.push(i);
      }
   }
   console.log(primeNumbers);
}
solve(args){
var素数=[];
对于(var i=1;i请检查此代码段

solve(args) {
   var primeNumbers = [];
   for(var i=1; i<=args ;i++){
      var isPrime = true;
         for(var j=2; j<i; j++){
            if(i%j === 0){
                isPrime = false;
            }
         }
      if(isPrime === true){
         primeNumbers.push(i);
      }
   }
   console.log(primeNumbers);
}
solve(args){
var素数=[];

对于(var i=1;i用1初始化数组将解决此问题

solve(args) {
       var primeNumbers = [1];
       for(var i=1; i<=args ;i++){
          var isPrime = true;
             for(var j=2; j<i; j++){
                if(i%j === 0){
                    isPrime = false;
                }
             }
          if(isPrime === true){
             primeNumbers.push(i);
          }
       }
       console.log(primeNumbers);
    }
solve(args){
var素数=[1];

对于(var i=1;i用1初始化数组将解决此问题

solve(args) {
       var primeNumbers = [1];
       for(var i=1; i<=args ;i++){
          var isPrime = true;
             for(var j=2; j<i; j++){
                if(i%j === 0){
                    isPrime = false;
                }
             }
          if(isPrime === true){
             primeNumbers.push(i);
          }
       }
       console.log(primeNumbers);
    }
solve(args){
var素数=[1];

对于(var i=1;i您可以检查提供的数字是否大于
2
,并将
2
添加到数组中。然后从
3
迭代到提供的数字,通过增加
2
跳过所有偶数

函数getPrimeNumber(num){ 设素数=[]; 如果(数值>2) 素数=[2];
对于(假设a=3;a您可以检查提供的数字是否大于
2
,并将
2
添加到数组中。然后从
3
迭代到提供的数字,通过增加
2
跳过所有偶数

函数getPrimeNumber(num){ 设素数=[]; 如果(数值>2) 素数=[2];
对于(设a=3;a每一个无提示被除的数都是一个组合数,因此无需对所有数进行模检验,只需对低于它的主数子集进行模检验

 function solve(args){
        var primeNumbers = new Array();
            for(let a=2;a<=args;a++){
                // console.log("lets test: "+a);
                let isPrime = true;

                for(let prime of primeNumbers){
                    if(a % prime == 0){
                        // console.log(a +" is a composition of "+prime );
                        isPrime = false;
                        break;
                    }
                }

                if(isPrime){
                    primeNumbers.push(a);
                }
      }
       return primeNumbers;
    }
函数求解(args){
var primeNumbers=新数组();

对于(设a=2;a每一个无提示被除的数都是一个组合数
,因此无需对所有数进行模检验,只需对低于它的主数子集进行模检验

 function solve(args){
        var primeNumbers = new Array();
            for(let a=2;a<=args;a++){
                // console.log("lets test: "+a);
                let isPrime = true;

                for(let prime of primeNumbers){
                    if(a % prime == 0){
                        // console.log(a +" is a composition of "+prime );
                        isPrime = false;
                        break;
                    }
                }

                if(isPrime){
                    primeNumbers.push(a);
                }
      }
       return primeNumbers;
    }
函数求解(args){
var primeNumbers=新数组();

对于(设a=2;a:)所有数字都可分为1!!!
…设b=1…
:))所有数字都可分为1!!!
…让b=1…
1不是质数,也许可以尝试从2而不是1运行外部循环,这取决于@Y.Ivanov选择是否将1作为他想要的数组集合。我刚刚编辑了他的代码以满足他的需要。请查看他的问题标题打印1中的质数(其中1是质数)对此表示怀疑。我的bad1不是质数,可能尝试从2而不是1运行外部循环。这取决于@Y.Ivanov选择是否将1作为他想要的数组集合。我刚刚编辑了他的代码以满足他的需要。请查看他的问题标题打印1中的质数(其中1是质数)我的问题是,为什么你需要硬编码1?如果你默认输入1,那么我们为什么要为此编写程序?为什么你需要硬编码1?如果你默认输入1,那么我们为什么要为此编写程序?