下列程序的功能是计算两个自然数的最大公约数,界面如下图所示。给定的程序不完整,将程序补充完整。 Private Sub Command1_Click() Dim x As Long, y As Long,i As Long x=Val(

admin2009-02-13  12

问题 下列程序的功能是计算两个自然数的最大公约数,界面如下图所示。给定的程序不完整,将程序补充完整。

Private Sub Command1_Click()
    Dim x As Long, y As Long,i As Long
    x=Val(Text1.Text)
    y=Val(TextText)
    TextText = Str(【  】)
End Sub
Function  fun1(a As Long,b As Long)As Long
    Dim r As  Long
    Dim t As  Long
       If【  】Then
         t = a
         a = b
         b = t
      End If
      r = a  Mod  b
      Do While  r <> 0
         a = b
         b = r
         r = a  Mod  b
      Loop
     【  】
End  Function

选项

答案fun1(x,y) , a<b , fun1=b

解析 由“欧几里德”求最大公约数的算法可知,当余数r为零时,b为x和y的最大公约数。填空[13]是将fun1的计算值返回。为了确保a>b,如果程序中的填空[14](a<b)的条件成立的话,就将a和b的值对调。填空[15]就是将最大公约数b赋值给函数名fun1,由它将计算结果返回去。
转载请注明原文地址:https://kaotiyun.com/show/c91p777K
0

最新回复(0)