求VB代码:若两个素数之差为2,则这两个素数就是一对孪生素数。编写程序找出1~100之间所有的孪生素数。

例如:3和5,5和7,11和13
2024-12-17 05:44:01
推荐回答(1个)
回答1:

Option Explicit
Private Sub Command1_Click()
Dim i As Long
    For i = 3 To 100 Step 2 '判断3-100的数是否为素数,因双数肯定不是素数,故步长为2
        If panduan(i) Then '如果当前i为素数
            If panduan(i + 2) Then '判断比i大2的数是否为素数
                Print i, i + 2 '输出孪生素数
            End If
        End If
    Next i
End Sub
Public Function panduan(n As Long) As Boolean '判断n是否为素数
Dim i As Long
    For i = 2 To n - 1
        If n Mod i = 0 Then
            panduan = False
            Exit Function
        End If
    Next i
    panduan = True
End Function