Javascript输入一整数a,判断它是否是质数,分别用for和while实现
时间: 2023-09-11 22:05:21 浏览: 108
### 回答1:
下面是使用 for 循环和 while 循环实现判断整数是否是质数的代码:
使用 for 循环:
```
function isPrimeFor(a) {
if (a <= 1) {
return false;
}
for (var i = 2; i < a; i++) {
if (a % i === 0) {
return false;
}
}
return true;
}
```
使用 while 循环:
```
function isPrimeWhile(a) {
if (a <= 1) {
return false;
}
var i = 2;
while (i < a) {
if (a % i === 0) {
return false;
}
i++;
}
return true;
}
```
在这两种实现中,如果整数 a 能被 2 到 a-1 之间的任意一个数整除,就说明它不是质数,函数返回 false;如果循环结束后仍然未返回 false,说明它是质数,函数返回 true。
### 回答2:
for循环实现:
function isPrimeFor(a) {
if (a <= 1) {
return "不是质数";
}
for (let i = 2; i <= Math.sqrt(a); i++) {
if (a % i === 0) {
return "不是质数";
}
}
return "是质数";
}
while循环实现:
function isPrimeWhile(a) {
if (a <= 1) {
return "不是质数";
}
let i = 2;
while (i <= Math.sqrt(a)) {
if (a % i === 0) {
return "不是质数";
}
i++;
}
return "是质数";
}
以上两种方法都是通过判断给定数a是否能被从2到sqrt(a)之间的整数整除,如果能整除则不是质数,如果都不能整除,则是质数。其中sqrt()函数用于计算平方根。
### 回答3:
方法一:使用for循环实现
```javascript
function isPrimeNumberFor(a) {
// 如果a小于2,则返回false
if (a < 2) {
return false;
}
// 使用for循环判断a是否是质数
for (let i = 2; i <= Math.sqrt(a); i++) {
if (a % i === 0) {
return false;
}
}
return true;
}
```
方法二:使用while循环实现
```javascript
function isPrimeNumberWhile(a) {
// 如果a小于2,则返回false
if (a < 2) {
return false;
}
let i = 2;
// 使用while循环判断a是否是质数
while (i <= Math.sqrt(a)) {
if (a % i === 0) {
return false;
}
i++;
}
return true;
}
```
以上两个方法都是判断一个整数a是否是质数的函数。首先判断a是否小于2,如果是,则直接返回false,因为质数定义为大于1的整数。然后使用for循环或while循环从2开始,依次判断a是否能被2到它的平方根之间的数整除,如果能整除则返回false,否则返回true。
阅读全文