如何在javascript中找到0 - 100之间的素数而不使用内置函数?

lx0bsm1f  于 2023-03-28  发布在  Java
关注(0)|答案(2)|浏览(74)

我试图找到素数从1-n(假设n=100).没有使用内置函数.我已经想过了,我不知道如何找到他们.我尝试使用两个for循环和一个计数变量知道1-n之间的素数计数.我也想打印这些数字在控制台上.

function countPrimes(num){
  let count=0
  let primeCount=0;
  let i,j
  for(j=2;j<=num;j++)
  {
  for( i=2;i<=j;i++)
  {
    if(j%i==0)
    count++
  }

  if(count==2){
    primeCount++;
  }
  count=0


  }
  return primeCount;
}

console.log(countPrimes(100));

我试着运行上面的代码,但在控制台什么也没有得到。

lb3vh1jj

lb3vh1jj1#

尝试使用以下代码:

function countPrimes(num){
  let count = 0;
  for(let i = 2; i <= num; i++){
    let isPrime = true;
    for(let j = 2; j < i; j++){
      if(i % j == 0){
        isPrime = false;
        break;
      }
    }
    if(isPrime){
      count++;
      console.log(i);
    }
  }
  return count;
}

console.log(countPrimes(100));
myzjeezk

myzjeezk2#

每个数都被1整除,所以我们将从2开始i循环

function countPrimes(num){
  let count = 0;
  for(let i = 2; i <= num; i++){
    let prime = true;
    for(let j = 2; j < i; j++){
      if(i % j == 0){
        prime = false;
        break;
      }
    }
    if(prime){
      count++;
      console.log("Prime number", i);
    }
  }
  return count;
}

console.log("total Prime numbers",countPrimes(100));

相关问题