|  | 
 
 发表于 2020-10-2 11:27:37
|
显示全部楼层 
| '''13195 的质数因子有 5, 7, 13 和 29。 600851475143 的最大质数因子是多少?'''
 def sqrt(n):
 return int(n**(0.5))
 
 def max_prime_factor(num):
 var = 0
 if num == 1:
 print(prime_factors)
 print(factor)
 
 elif num != 1:
 for factor in range(int(math.sqrt(num)), 0, -1):
 if num%factor == 0:
 check = 0
 for prime in range(2, int(math.sqrt(factor)+1)):
 if factor%prime == 0:
 check += 1
 break
 max_prime_factor = factor
 if check == 0 :
 break
 print("%d 的最大质因子是: %d" %(num,factor))
 
 start_max_prime_factor = time.time()
 max_prime_factor(600851475143)
 time_max_prime_factor = time.time() - start_max_prime_factor
 print("%f秒" %time_max_prime_factor)
 
 
 600851475143 的最大质因子是: 6857
 0.073410秒
 
 Process finished with exit code 0
 | 
 |