🐍 Python program to list all prime factors of a number taken by the user.
def getprimefactors(n):
primes = [2]
for num in range(3,n+1,2):
isprime = True
numsqrt = int(math.sqrt(num)+1)
for i in primes:
if i<=numsqrt:
if (num%i==0):
isprime = False
break
else:
break
if isprime:
primes.append(num)
if n%num==0:
print(num)
if __name__=='__main__':
again = 'y'
while again[0].lower()=='y':
getprimefactors(int(input("Enter a number to find primes: ")))
again = input("Again? (y/n): ")
Solution
import mathdef getprimefactors(n):
primes = [2]
for num in range(3,n+1,2):
isprime = True
numsqrt = int(math.sqrt(num)+1)
for i in primes:
if i<=numsqrt:
if (num%i==0):
isprime = False
break
else:
break
if isprime:
primes.append(num)
if n%num==0:
print(num)
if __name__=='__main__':
again = 'y'
while again[0].lower()=='y':
getprimefactors(int(input("Enter a number to find primes: ")))
again = input("Again? (y/n): ")
Comments
Post a Comment