JavaScript Prime编号查询

发布于 2025-02-06 21:11:19 字数 637 浏览 0 评论 0原文

这是我的代码:

  var num = parseInt(105);
  // debugger
  if (num < 1) {
    console.log("=> 0 or minus value is not a prime number", num);


  } else if (num == 2) {
    console.log("=> 2 is a prime number", num);


  } else if (num > 2) {

    for (i = 2; i < num; i++) {
      if (num % i == 0) {
        console.log("this is a not prime number as it is devided by zero");
        break


      } else {
        console.log("this is a prime number")

      }
    }
  }

在此代码中,为什么当我将任何奇数数字放置在我已经磨损的任何奇数时,请显示输出,以停止循环中断。

this is my code :

  var num = parseInt(105);
  // debugger
  if (num < 1) {
    console.log("=> 0 or minus value is not a prime number", num);


  } else if (num == 2) {
    console.log("=> 2 is a prime number", num);


  } else if (num > 2) {

    for (i = 2; i < num; i++) {
      if (num % i == 0) {
        console.log("this is a not prime number as it is devided by zero");
        break


      } else {
        console.log("this is a prime number")

      }
    }
  }

in this code why else statement is showing the output when I put any odd numbers where I already worte the break statement for stopping the loop break.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

神妖 2025-02-13 21:11:19

如果该数字不能由特定的i排除,那么您的其他条件将被执行。更改num5您会看到这是一个素数打印几次。

您可以创建一个函数(如下所示),在其中我们首先检查所有i s,然后打印这是一个Prime Number

function isPrime(num) {
  if (num < 1) {
    console.log("=> 0 or negative values are not prime numbers", num);
  } else if (num === 2) {
    console.log("=> 2 is a prime number", num);
  } else if (num > 2) {
    for (let i = 2; i < num; i++) {
      if (num % i === 0) {
        console.log(`this is a not prime number as it is divisible by ${i}`);
        return;
      }
    }
  }
  console.log("this is a prime number");
}

isPrime(105);

或者,您可以将结果存储在变量中,并且在循环打印的末尾,如果未设置该变量,则是素数

const num = 105;
if (num < 1) {
  console.log("=> 0 or negative values are not prime numbers", num);
} else if (num === 2) {
  console.log("=> 2 is a prime number", num);
} else if (num > 2) {
  let isPrime;
  for (let i = 2; i < num; i++) {
    if (num % i === 0) {
      console.log(`this is a not prime number as it is divisible by ${i}`);
      isPrime = false;
      break;
    }
  }
  if (isPrime !== false) {
    console.log("this is a prime number");
  }
}

If the number is not divisible by a particular i then your else condition is being executed. Change num to 5 you would see this is a prime number print several times.

You can create a function (as shown below) where we first check all the is then print this is a prime number.

function isPrime(num) {
  if (num < 1) {
    console.log("=> 0 or negative values are not prime numbers", num);
  } else if (num === 2) {
    console.log("=> 2 is a prime number", num);
  } else if (num > 2) {
    for (let i = 2; i < num; i++) {
      if (num % i === 0) {
        console.log(`this is a not prime number as it is divisible by ${i}`);
        return;
      }
    }
  }
  console.log("this is a prime number");
}

isPrime(105);

Or you can store the result in a variable, and at the end of the loop print this is a prime number if the variable wasn't set.

const num = 105;
if (num < 1) {
  console.log("=> 0 or negative values are not prime numbers", num);
} else if (num === 2) {
  console.log("=> 2 is a prime number", num);
} else if (num > 2) {
  let isPrime;
  for (let i = 2; i < num; i++) {
    if (num % i === 0) {
      console.log(`this is a not prime number as it is divisible by ${i}`);
      isPrime = false;
      break;
    }
  }
  if (isPrime !== false) {
    console.log("this is a prime number");
  }
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文