Private Sub Form_Click()
Dim m As Long
Dim n As Long
Dim x As Long
Dim loopnum As Long '分解的对数
Dim hangshu As Long '打印的行数
hangshu = 1
Randomize
Do
x = Int(Rnd * 2000 + 100)
Debug.Print x
Loop While (x Mod 2 <> 0)
x = Val(InputBox("请输入一个偶数"))
If x Mod 2 <> 0 Then
MsgBox "请再次输入数字,请注意输入的应该是偶数", vbCritical, "提示"
Exit Sub
End If
Print
Print "需要分解的数字为:"; x
Print "--------------------------------------------------------------------------------------------------------"
For m = 1 To x / 2
n = x - m
If sushu(n) And sushu(m) Then
Print x; "="; m; "+"; n,
If hangshu Mod 4 = 0 Then Print '每4对输入即换行
hangshu = hangshu + 1
loopnum = loopnum + 1
End If
Next m
Print
Print "--------------------------------------------------------------------------------------------------------"
Print "总共找到了"; loopnum; "对分解的数"
End Sub
Private Function sushu(n As Long) As Boolean '判断一个数是否为素数
Dim i As Long
For i = 2 To n - 1
If n Mod i = 0 Then Exit For
Next i
If i > n - 1 Then
sushu = True
Else
sushu = False
End If
End Function
Private Sub Form_Load()
Me.AutoRedraw = True
End Sub