VB 程序纠错 两个素数之差为2则这两个数是孪生素数找出1——100的孪生素数

来源:百度知道 编辑:UC知道 时间:2024/07/04 03:47:07
Option Base 1
Private Sub sushu(ByVal n As Integer)
Dim j As Integer: k = 1
For j = 2 To n - 1
If n Mod j = 0 Then k = 0
Next j
End Sub

Private Sub Form_Load()
Dim a() As Integer, i As Integer
For i = 2 To 100
Call shshu(i)
If k = 1 Then
m = m + 1
ReDim Preserve a(m)
a(m) = i
If a(m) - a(m - 1) = 2 Then Print a(m), a(m - 1)
End If
Next i
End Sub
帮我找一下错误,O(∩_∩)O谢谢啦

不能在form_load事件中用print。因为form还没有开始paint.
所以得把它放在一个按钮事件里。
非得要在load中,就用debug.print输出结果。

Option Base 1
Private k As Integer
Private Sub sushu(ByVal n As Integer)
Dim j As Integer: k = 1
For j = 2 To n - 1
If n Mod j = 0 Then k = 0
Next j
End Sub

Private Sub Command1_Click()
Dim a() As Integer, i As Integer
m = 0
For i = 2 To 100
Call sushu(i)
If k = 1 Then
m = m + 1
ReDim Preserve a(m)
a(m) = i
If m > 1 Then If a(m) - a(m - 1) = 2 Then Print a(m), a(m - 1)
End If
Next i
End Sub

Option Base 1
Dim k As Integer
Private Function suShu(ByVal n As Integer) As Integer
Dim j As Integer:
suShu = 1
For j = 2 To Sqr(n)
If n Mod j = 0 Then suShu = 0
Next j
End Function

Private Sub Form_Click()
Dim a() As Integer, i As Integer
m = 0
For i = 2 To 100
If suShu(i) = 1 Then
If s