首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Project Euler 3

Project Euler 3
EN

Stack Overflow用户
提问于 2015-09-22 14:21:25
回答 1查看 309关注 0票数 0

我一直试图用下面的vb代码来解决项目euler上的问题3,但我不理解为什么它不能工作。有人能给我指个方向吗?

代码语言:javascript
运行
复制
Sub Main()
    Dim p As Int64 = 600851475143
    Dim y As Integer

    For i As Int64 = p / 2 To 1 Step -1
        If p Mod i = 0 Then
            y = 0
            For n As Int64 = 1 To Math.Floor(i ^ 0.5) Step 1
                If i Mod n = 0 Then
                    y = y + 1
                End If

            Next
            If y = 0 Then

                Console.WriteLine(i)
                Console.ReadLine()

            End If

        End If

    Next

End Sub

问题是“13195的质因数是5,7,13和29。

数字600851475143的最大素因数是什么?“

EN

回答 1

Stack Overflow用户

发布于 2015-09-22 14:57:30

代码语言:javascript
运行
复制
For n As Int64 = 1 To Math.Floor(i ^ 0.5) Step 1
    If i Mod n = 0 Then

您可以从n=1开始。每个数都被1整除。

(所以每次都是y = y+1,而If y = 0 Then永远不会发生)。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32709716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档