python用while循环判断1到200质数
时间: 2024-09-15 09:03:08 浏览: 51
在Python中,判断1到200的质数可以通过while循环来实现。质数是指只能被1和它本身整除的数,且质数大于1。下面是使用while循环来找出1到200之间所有质数的示例代码:
```python
i = 2 # 从2开始判断,因为1不是质数
while i <= 200:
is_prime = True # 假设当前的数字是质数
j = 2 # 从2开始判断是否能整除
while j * j <= i: # 只需要判断到sqrt(i),如果i能被sqrt(i)的整数倍整除,则不是质数
if i % j == 0: # 如果能被整除,则不是质数
is_prime = False
break # 跳出内层循环
j += 1 # 增加j的值
if is_prime: # 如果确认是质数
print(i) # 输出质数
i += 1 # 移动到下一个数
```
这段代码首先从2开始循环,因为1不是质数。内层循环用于判断当前的数`i`是否有除了1和它本身以外的因子,如果找到这样的因子,则`i`不是质数,`is_prime`被设置为False,并跳出内层循环。如果内层循环结束时`is_prime`仍然为True,则说明`i`是质数,然后打印出来。接着`i`自增,外层循环继续判断下一个数。
相关问题
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>
Python如何用while循环判断素数
可以使用以下代码来判断素数:
```
num = int(input("请输入一个正整数:"))
i = 2
while i <= num / 2:
if num % i == 0:
print(num, "不是素数")
break
i += 1
else:
print(num, "是素数")
```
该代码使用while循环来逐个判断num是否能被2到num/2之间的整数整除,如果能整除,则说明num不是素数,否则说明num是素数。
阅读全文