信息技术奥林匹克竞赛_VB程序设计的常用算法(3)
发布时间:2021-06-08
发布时间:2021-06-08
m=inputBox("m=")
n=inputBox("n=")
nm=n*m
If m < n Then t = m: m = n: n = t
r=m mod n
Do While (r <> 0) m=n
n=r
r= m mod n
Loop
Print "最大公约数=", n
Print "最小公倍数=", nm/n
三、判断素数
只能被1或本身整除的数称为素数 基本思想:把m作
为被除数,将2—INT()作为除数,如果都除不尽,m就是素数,否则就不是。(可用以下程序段实现)
m =val( InputBox("请输入一个数"))
For i=2 To int(sqr(m))
If m Mod i = 0 Then Exit For
Next i
If i > int(sqr(m)) Then
Print "该数是素数"
Else
Print "该数不是素数"
End If
将其写成一函数,若为素数返回True,不是则返回
False
Private Function Prime( m as Integer) As
Boolean
Dim i%
Prime=True
For i=2 To int(sqr(m))
If m Mod i = 0 Then Prime=False: Exit For
Next i