使用Python中while检查素数
时间: 2024-05-03 12:21:35 浏览: 8
以下是使用while循环检查素数的Python代码:
```python
num = int(input("请输入一个正整数:"))
if num < 2:
print("您输入的数字不是素数")
else:
i = 2
while i <= num / 2:
if num % i == 0:
print("您输入的数字不是素数")
break
i += 1
else:
print("您输入的数字是素数")
```
首先,我们从用户那里获取一个正整数。如果这个数字小于2,则它不是素数。否则我们从2开始循环到num/2并检查是否有任何数字可以整除num。如果存在这样的数字,则num不是素数。如果在循环结束时没有发现可以整除num的数字,则num是素数。注意else语句是与while循环相关的,不是if语句。
相关问题
python用while判断素数
下面是一个使用while判断素数的Python程序:
```
n = int(input("请输入一个正整数:"))
if n <= 1:
print(n, "不是素数")
else:
i = 2
while i <= n / 2:
if n % i == 0:
print(n, "不是素数")
break
i += 1
else:
print(n, "是素数")
```
首先,程序会从用户获取一个正整数。如果该数小于等于1,则直接输出不是素数。
否则,程序会从2开始逐个检查能否被n整除的数,直到n/2为止。如果找到一个能被n整除的数,则输出不是素数并退出循环。如果循环正常结束,则说明n是素数。
pythonwhile循环判断素数
在Python中,可以使用while循环来判断素数。下面是两种使用while循环判断素数的方法:
方法1:
```python
lis1 = []
i = 2
while i <= 100:
flag = True
j = 2
while j < i:
if i % j == 0:
flag = False
break
j += 1
if flag:
lis1.append(i)
i += 1
print(lis1)
```
方法2:
```python
list2 = []
i = 2
while i <= 100:
j = 2
while j < i:
if i % j == 0:
break
j += 1
else:
list2.append(i)
i += 1
print(list2)
```
这两种方法都是使用嵌套的while循环来判断数字是否为素数。内循环从2开始,到数字本身之间的数进行判断,如果能被整除,则将布尔变量flag置为False。如果内循环正常结束(即没有被整除),则将数字添加到列表中。
运行结果都是:[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97],这些数字都是100以内的素数。所以这两种方法都可以用于判断素数。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>