# @Time : 2017/6/18 10:03
# @Author : wanyang
# @Mail :[email protected]
# @Question:Largest prime factor https://projecteuler.net/problem=3
# @Answer :6857
from math import *
# 判斷是否是質數
def is_prime(num):
for i in range(2, int(sqrt(num)) + 1):
if num % i == 0:
return False
return True
# 遞歸調用,獲取質因數
def prime_factor(num):
if is_prime(num):
print(num)
return num
for i in range(2, int(sqrt(num)) + 1):
if num % i == 0:
print(i)
prime_factor(int(num / i))
return
# number = 13195
number = 600851475143
prime_factor(number)
ProjectEuler-Problem 3-Largest prime factor
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.