问题要求检查数字是否为质数。如果不是,则必须创建一个单独的函数来打印质数因子的列表。确切的问题是:
编写两个函数(isPrime和primeFactors)。功能
如果其参数为质数,则isPrime将返回True,否则返回False。函数primeFactors将返回一个数素数的列表。
到目前为止,我有:
def isPrime(x):
if x==1:
return False
elif x==2:
return True
else:
for i in range(2,x):
if (x % i==0):
return False
第一个功能检查数字是否为质数。但是,我不确定如何使primeFactors函数仅在结果不是素数的情况下起作用。
最佳答案
由于您已经具有确定数字是否为质数的功能,因此查找数字的质因数的功能如下:
def findPrimeFactors(number):
primeFactors = []
for i in range(2, number + 1):
if number % i == 0 and isPrime(i):
primeFactors.append(i)
return primeFactors
关于python - 检查素数和打印因子,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53135697/