由键盘输入一个正整数,找出大于或者等于该数的第一个素数

2024-11-19 15:33:09
推荐回答(1个)
回答1:

Private Sub form_click()
Dim p As Integer, x As Integer, flag As Boolean
flag = False '这里应是false,否则无法执行
x = InputBox("请输入一个正整数", "输入正整数")
Do While Not flag '只有标记为真时,才执行
p = 2 '1不可以为素数,所以选2
flag = True '把标记设为真
Do While flag And p <= x / 2 '标记为真,且p小于等于x/2
If x Mod p = 0 Then '如果x可以被p整除,标记就变成假
flag = False
Else
p = p + 1 'p加一
End If
Loop
If Not flag Then x = x + 1 '如果没有找到素数那么x+1
Loop
Print "第一个素数是" & Str(x)
End Sub