首页 > 解决方案 > 如何在一个数字范围内找到素数的数量

问题描述

如何从此代码中找到介于 1 和 n 之间的数字范围内的素数数量。而不仅仅是数字本身?

  const primeNumberFromOneToN = (n)=>{ 

  let  primes =0;
  for (let i = 1; i <= n; i++) {
  let flag = 0;



 for (let j = 2; j < i; j++) {
    if (i % j == 0) {
        flag = 1;
        break;
    }}

if (i > 1 && flag == 0) {
     primes++;
   }

   return primes;

}
}
  
    

标签: javascript

解决方案


只需这样做:

  // take input from the user
  const lowerNumber = parseInt(prompt('Enter lower number: '));
  const higherNumber = parseInt(prompt('Enter higher number: '));

   console.log(`The prime numbers between ${lowerNumber} and ${higherNumber} are:`);


    for (let i = lowerNumber; i <= higherNumber; i++) {
    let flag = 0;

    
for (let j = 2; j < i; j++) {
    if (i % j == 0) {
        flag = 1;
        break;
       }
     }

    
    if (i > 1 && flag == 0) {
      console.count("prime numbers found"); // change is here
   }
 }

或者第二种方式:

  // take input from the user
  const lowerNumber = parseInt(prompt('Enter lower number: '));
  const higherNumber = parseInt(prompt('Enter higher number: '));
  let primes = 0;

   console.log(`The prime numbers between ${lowerNumber} and ${higherNumber} are:`);


    for (let i = lowerNumber; i <= higherNumber; i++) {
    let flag = 0;

    
for (let j = 2; j < i; j++) {
    if (i % j == 0) {
        flag = 1;
        break;
       }
     }

    
    if (i > 1 && flag == 0) {
      primes++;
   }
 }

// here you can show the number
console.log(primes);

推荐阅读