以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]请问n个数的最大公约数怎么求?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=51321)

--  作者:hanxuntx
--  发布时间:2014/5/24 11:18:00
--  [求助]请问n个数的最大公约数怎么求?

数的个数不确定

比如有5个数  30 50 30 30 60

如何求最大公约数?


--  作者:don
--  发布时间:2014/5/24 11:43:00
--  
這個去相關數學論壇請教會好點
--  作者:Bin
--  发布时间:2014/5/24 12:01:00
--  
Dim nms() As Integer =  {30 ,50 ,30 ,30 ,60}
Array.Sort(nms)
Dim gys As new List(of Integer)
For n As Integer = nms(0) To 2 Step -1
    Dim Isg As Boolean=True
    For i As Integer = 0 To nms.length-1
        If (nms(i) Mod n)<>0 Then
            Isg=False
            Exit For
        End If
    Next
    If Isg Then
       gys.Add(n)
    End If
Next
Dim z As Integer=1
For Each n As Integer In gys
   z= z*n
Next
output.show(z)

大概是这个样子

--  作者:hanxuntx
--  发布时间:2014/5/24 16:06:00
--  
谢谢bin