时间: 2020-11-26|30次围观|0 条评论

题目原文:

求600851475143的最大质因数

 

求600851475143的最大质因数插图

"""对于给定的n, 使factor = 2, 3, 4, 5, 6...,
对于每个factor, 当factor能被n完全整除时, 就到下一个factor.
可以预见, 所有被整除的factor都是质因数,
当所有小的因数都被整除时, n将会变为1

如n为20, factor为2时, 20 % 2 = 0, n = n / 2, n变为10,
return factor为10,
10 % 2 = 0, n = n / 2, n变为5, (整除时将某一个因数整除完)

然后下一个factor3, 4, 5, n % 5 = 0,
return factor = 5, n变为1, 跳出循环
"""


n = 600851475143
factor = 2
lastFactor = 1

while n > 1:
    if n % factor==0:  
        lastFactor = factor 
        n = n/factor
        while n % factor==0:
            n = n / factor
    factor = factor + 1  

print(lastFactor)

原文链接:https://blog.csdn.net/w605283073/article/details/52750786

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《求600851475143的最大质因数
   

还没有人抢沙发呢~