|
代码如下:
Private Sub Command1_Click() '求由2个孪生素数对组成的4生素数组的程序
Dim A, B
A = Val(Text1)
a1 = A
q = Val(Text2)
ts = Timer
m = Sqr(q)
t = Trim(Text4)
If Right(A, 1) Mod 2 = 0 Then
A = A + 1
Else
A = A
End If
s = 0
a2 = A
Do While a2 <= m
B1 = Val(823725 * a2 + 2)
b2 = Val(823725 * a2 - 2)
b3 = Val(823725 * a2 + 4)
b4 = Val(823725 * a2 - 4)
b5 = Val(829725 * a2 + 2)
b6 = Val(829725 * a2 - 2)
b7 = Val(829725 * a2 + 4)
b8 = Val(829725 * a2 - 4)
C1 = fenjieyinzi0(Val(B1))
C2 = fenjieyinzi0(Val(b2))
c3 = fenjieyinzi0(Trim(b3))
c4 = fenjieyinzi0(Trim(b4))
C5 = fenjieyinzi0(Trim(b5))
c6 = fenjieyinzi0(Trim(b6))
c7 = fenjieyinzi0(Trim(b7))
c8 = fenjieyinzi0(Trim(b8))
If InStr(C1, "*") = 0 And InStr(c4, "*") = 0 And InStr(C2, "*") = 0 And InStr(c3, "*") = 0 And InStr(C5, "*") = 0 And InStr(c7, "*") = 0 And InStr(c6, "*") = 0 And InStr(c8, "*") = 0 Then
s = s + 1
Print B1, b2, b3, b4
Text3 = Text3 & "/" & B1 & "/" & b2 & "/" & b3 & "/" & b4 & "/" & b5 & "/" & b6 & "/" & b7 & "/" & b8 & "k=" & a2 & vbCrLf
Else
s = s
End If
a2 = a2 + 2
Loop
a2 = a2
s1 = s
Do While a2 <= q
B1 = Val(823725 * a2 + 2)
b2 = Val(823725 * a2 - 2)
b3 = Val(823725 * a2 + 4)
b4 = Val(823725 * a2 - 4)
b5 = Val(829725 * a2 + 2)
b6 = Val(829725 * a2 - 2)
b7 = Val(829725 * a2 + 4)
b8 = Val(829725 * a2 - 4)
C1 = fenjieyinzi0(Val(B1))
C2 = fenjieyinzi0(Val(b2))
c3 = fenjieyinzi0(Trim(b3))
c4 = fenjieyinzi0(Trim(b4))
C5 = fenjieyinzi0(Trim(b5))
c6 = fenjieyinzi0(Trim(b6))
c7 = fenjieyinzi0(Trim(b7))
c8 = fenjieyinzi0(Trim(b8))
If InStr(C1, "*") = 0 And InStr(c4, "*") = 0 And InStr(C2, "*") = 0 And InStr(c3, "*") = 0 And InStr(C5, "*") = 0 And InStr(c7, "*") = 0 And InStr(c6, "*") = 0 And InStr(c8, "*") = 0 Then
s1 = s1 + 1
Print B1, b2, b3, b4
Text3 = Text3 & "/" & B1 & "/" & b2 & "/" & b3 & "/" & b4 & "/" & b5 & "/" & b6 & "/" & b7 & "/" & b8 & "k=" & a2 & vbCrLf
s1 = s1
End If
a2 = a2 + 2
Loop
Combo1 = a1 & "与" & q & "之间的k*823725+-2+-4及*829725+-2+-4可以产生" & s1 & "组8生素数对: (用时" & Timer - ts & "秒)" & vbCrLf & Text3
End Sub |
|