vb:求两自然数m,n的最小公倍数?
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/15 00:17:23
vb:求两自然数m,n的最小公倍数?
vb:求两自然数m,n的最小公倍数?
vb:求两自然数m,n的最小公倍数?
具体的语言已经忘了.可以提供的是思路.
s = m * n
If语句找出m和n中的小项,输入a,另一值输入b.
用For From To语句枚举从1到 根号 a的所有数,
用If语句筛选因子(mod取余=零)并输入c,
然后If语句检验c是否为b的因子,若是则s = s / c,不是则不变.
结束For语句.
注:For语句要套在最外面,里面嵌检验因子和s = s / c.希望没错,有不少遗忘了.
Private Sub Command1_Click()
Dim m, n, m1, n1, c
m = Val(InputBox("m="))
n = Val(InputBox("n="))
If m < n Then c = m: m = n: n = c
m1 = m: n1 = n
Do While m1 Mod n1 <> 0
c = m1 Mod n1
m1 = n1
n1 = c
Loop
Print m * n / n1
End Sub
求最大公约数(GetMaxDec) 最小公倍数(GetMinDec)。
参数a和b是两个数据,返回值即最大公约数或者最小公倍数。
Private Function GetMinDec(ByVal a As Long, ByVal b As Long) As Long
GetMinDec = a * b / GetMaxDec(a, b)
End Functi...
全部展开
求最大公约数(GetMaxDec) 最小公倍数(GetMinDec)。
参数a和b是两个数据,返回值即最大公约数或者最小公倍数。
Private Function GetMinDec(ByVal a As Long, ByVal b As Long) As Long
GetMinDec = a * b / GetMaxDec(a, b)
End Function
Private Function GetMaxDec(ByVal a As Long, ByVal b As Long) As Long
Dim c As Long
c = 1
Do While c <> 0
c = a Mod b
a = b
b = c
DoEvents: Loop
GetMaxDec = a
End Function
收起