分别用while循环与for循环判断一个正整数是否为素数(v1) 利用while循环与for循环两种不同的循环模式求解:输入一个正整数,判断其是否为素数,是则输出Yes,否则输出No
时间: 2023-09-03 20:25:55 浏览: 129
判断一个数是否为素数 判断一个数是否为素数
### 回答1:
使用while循环方式判断一个正整数是否为素数(v1):
```python
num = int(input("请输入一个正整数:"))
is_prime = True
i = 2
while i < num:
if num % i == 0:
is_prime = False
break
i += 1
if is_prime:
print("Yes")
else:
print("No")
```
使用for循环方式判断一个正整数是否为素数(v1):
```python
num = int(input("请输入一个正整数:"))
is_prime = True
for i in range(2, num):
if num % i == 0:
is_prime = False
break
if is_prime:
print("Yes")
else:
print("No")
```
注意,这两种方式只是不同的循环方式,判断素数的逻辑是一样的。后面还可以优化算法,从2到num的平方根进行遍历即可。
### 回答2:
使用while循环判断一个正整数是否为素数的方法如下:
1. 首先接收一个正整数num作为输入。
2. 使用一个变量i从2开始,直到i小于等于num的平方根,并且在该过程中判断num是否能够被i整除。
3. 如果num能够被任何一个小于等于其平方根的数整除,则说明num不是素数,输出"No";否则,说明num是素数,输出"Yes"。
4. 示例代码如下:
```python
import math
num = int(input("请输入一个正整数: "))
is_prime = True
i = 2
while i <= math.sqrt(num):
if num % i == 0:
is_prime = False
break
i += 1
if is_prime:
print("Yes")
else:
print("No")
```
使用for循环判断一个正整数是否为素数的方法如下:
1. 首先接收一个正整数num作为输入。
2. 使用for循环对从2到num的每一个数字进行迭代,并在该过程中判断num是否能够被迭代的数字整除。
3. 如果num能够被任何一个小于num的数整除,则说明num不是素数,输出"No";否则,说明num是素数,输出"Yes"。
4. 示例代码如下:
```python
num = int(input("请输入一个正整数: "))
is_prime = True
for i in range(2, num):
if num % i == 0:
is_prime = False
break
if is_prime:
print("Yes")
else:
print("No")
```
### 回答3:
while循环判断一个正整数是否为素数的代码如下:
```python
num = int(input("请输入一个正整数"))
is_prime = True
i = 2
while i < num:
if num % i == 0:
is_prime = False
break
i += 1
if is_prime:
print("Yes")
else:
print("No")
```
for循环判断一个正整数是否为素数的代码如下:
```python
num = int(input("请输入一个正整数"))
is_prime = True
for i in range(2, num):
if num % i == 0:
is_prime = False
break
if is_prime:
print("Yes")
else:
print("No")
```
这两段代码的思路是一样的,都是利用循环从2开始逐个除以正整数本身之前的每一个数,如果存在能够整除的数,则说明该数不是素数。如果循环结束时没有找到能够整除的数,则说明该数是素数。最后根据is_prime的值判断是否输出Yes或No。
阅读全文