以下是一个找出一个数的质因数的程序示例:
def prime_factors(n):
factors = []
i = 2
while i * i <= n:
if n % i:
i += 1
else:
n //= i
factors.append(i)
if n > 1:
factors.append(n)
return factors
number = int(input("请输入一个整数: "))
factors = prime_factors(number)
print(f"{number}的质因数是:", end=" ")
for factor in factors:
print(factor, end=" ")
这个程序使用了一个prime_factors
函数来找出给定数n
的质因数。在函数中,我们使用一个循环来尝试将n
除以从2开始的所有整数(质数)。如果整数不能整除n
,则将整数加1,直到找到一个可以整除n
的质数。一旦找到一个质数,我们就将其添加到factors
列表中,并将n
除以该质数。在循环结束时,我们还需要检查n
是否大于1,如果是,则将其添加到factors
列表中,因为它本身也是质数。
最后,我们输入一个整数,并将其传递给prime_factors
函数,然后打印出该数的质因数。
示例输出:
请输入一个整数: 56
56的质因数是: 2 2 2 7