编程判断一个给定的正整数n是否是素数。 1、如果n是素数,则打印输出n是素数的信息。 2、如果n不是素数,则找出n的所有素数因子,并打印出来。例如:18的所有素数因子是2、3和3。
时间: 2024-09-23 12:02:42 浏览: 46
Python编程判断一个正整数是否为素数的方法
5星 · 资源好评率100%
判断一个正整数n是否为素数的一种常见算法是埃拉托斯特尼筛法(Sieve of Eratosthenes),但为了简化这里,我们可以使用试除法。下面是Python的一个简单示例:
```python
def is_prime(n):
if n <= 1:
return False
elif n == 2: # 特殊处理2这个唯一的偶数质数
return True
elif n % 2 == 0:
return False
else:
i = 3
while i * i <= n:
if n % i == 0:
print(f"{n}不是素数,它的素数因子有{i}")
return False
i += 2 # 只需要检查奇数因子,因为偶数已经排除了
return True
# 测试函数
n = int(input("请输入一个正整数: "))
if is_prime(n):
print(f"{n}是素数")
else:
print(f"{n}不是素数")
```
用户输入一个正整数,程序会判断它是否为素数。如果是素数,则直接输出;如果不是素数,则找到并打印出所有素数因子。
阅读全文