设计一个函数,输出整数n的所有素数因子。
时间: 2023-04-17 22:00:47 浏览: 200
输出所有的素数
可以使用一个循环,从2开始一直到n,判断每个数是否是n的因子,如果是,则判断它是否是素数,如果是,则输出它。
判断一个数是否是素数可以使用另一个函数,可以使用试除法,即从2开始一直到该数的平方根,判断是否能整除该数,如果能,则不是素数,如果不能,则是素数。
以下是代码实现:
```python
def is_prime(num):
if num < 2:
return False
for i in range(2, int(num ** .5) + 1):
if num % i == :
return False
return True
def prime_factors(n):
factors = []
for i in range(2, n + 1):
if n % i == and is_prime(i):
factors.append(i)
return factors
```
使用示例:
```python
print(prime_factors(24)) # 输出 [2, 3]
print(prime_factors(37)) # 输出 [37]
```
阅读全文