向程序输入一个正整数,请你判断该正整数是否是素数,如果是,则输出yes,否则输
时间: 2023-09-15 08:03:23 浏览: 333
输入一个正整数,判断是不是素数(C++)
首先判断一个正整数是否是素数,需要判断它是否能被2到sqrt(n)之间的所有数整除,其中n是输入的正整数。
假设输入的正整数是num,那么算法的步骤如下:
1. 如果num小于2,则输出"no",因为小于2的数都不是素数。
2. 如果num等于2,则输出"yes",因为2是最小的素数。
3. 使用一个循环从2到sqrt(num)遍历,判断这些数是否能整除num。
4. 如果存在一个数能整除num,则输出"no",因为num不是素数。
5. 如果循环结束后没有找到能整除num的数,则输出"yes",因为num是素数。
下面是根据上述算法编写的Python代码:
```python
import math
num = int(input("请输入一个正整数:"))
if num < 2:
print("no")
elif num == 2:
print("yes")
else:
is_prime = True
for i in range(2, int(math.sqrt(num)) + 1):
if num % i == 0:
is_prime = False
break
if is_prime:
print("yes")
else:
print("no")
```
以上是判断一个正整数是否是素数的算法和代码。
阅读全文