gpt4 book ai didi

vb.net - 素数检查器慢得令人难以置信

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:03:26 25 4
gpt4 key购买 nike

我有一段代码可以检查给定数字是否为素数:

If x Mod 2 = 0 Then
Return False
End If
For i = 3 To x / 2 + 1 Step 2
If x Mod i = 0 Then
Return False
End If
Next
Return True

我只将它用于数字 1E7 <= x <= 2E7 .然而,它非常慢——我几乎不能每秒检查 300 个数字,所以检查所有 x需要超过 23 天...

有人可以提供一些改进建议或说明我这样做可能是多余的吗?

最佳答案

这是检查素数的通用算法。如果您想批量检查质数,请使用算法 http://en.wikipedia.org/wiki/Sieve_of_Eratosthenes

关于vb.net - 素数检查器慢得令人难以置信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4983805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com