处理大长度数字时如何减少python中的时间限制

由于val很大。所以它没有执行代码。我们可以做些什么来解决这个问题。


val = 78478277380 

i = 2

while i < val:

   if val % i == 0:

       print(i)

   i += 1

我想要 val 的所有因素。


收到一只叮咚
浏览 263回答 2
2回答

蝴蝶不菲

如果您打印所有数字,您将更好地了解正在发生的事情:val = 78478277380i = 2while i < val:&nbsp; &nbsp;print(str(i) + "is a not factor")&nbsp; &nbsp;if val % i == 0:&nbsp; &nbsp; &nbsp; &nbsp;print(str(i) + "is a factor")&nbsp; &nbsp;i += 1问题是这个数字没有太多的因素。

翻过高山走不出你

在我的机器上运行它,我得到前 5 个因素:2, 4, 5, 10, 20然后它会安静一段时间。这不是因为它停止运行,而是因为我很确定下一个因素是3923913869需要一段时间才能找到。来源。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python