我在其他地方找了個程序,妳看看:
Private Function check(i As Integer) As Boolean
For j = 2 To CInt(Sqr(i)) + 1 '從2循環到i的平方根
If i Mod j = 0 Then '如果i除以j的余數為0,說明i不是素數
check = False '返回false
Exit Function '退出本過程
End If
Next j
check = True '循環結束沒有退出過程,說明i不能整除從2到i平方根的所有數,也就是說i是素數,返回true
End Function
Private Sub Command1_Click()
Dim i As Integer
i = CInt(Text1.Text) '取壹個數,轉化為整數
If i Mod 2 = 0 Then '如果是偶數
i = i - 1 '取比它下的最大奇數,因為只有奇數才可能是素數
Else
i = i - 2 '同樣是取比它下的最大奇數
End If
Do Until check(i) '循環到check(i)為true,也就是找到最大的素數
i = i - 2 '減2是為了使i壹直是奇數
Loop
Text2.Text = i '輸出這個素數
End Sub
'呵呵抄來的 試了下很好用,需要兩個文本框,壹個按鈕
請參考