下列程序的功能是求出所有的1~100之间的孪生素数。孪生素数是指两个素数的差为2,如3和5,11和13等,请填空。 Private Sub Form_Click() Dim i As Integer For i=3 To 97

admin2009-02-13  15

问题 下列程序的功能是求出所有的1~100之间的孪生素数。孪生素数是指两个素数的差为2,如3和5,11和13等,请填空。
   Private Sub Form_Click()
      Dim i As Integer
      For i=3 To 97 Step 2
         If【  】Then
            Print i,i+2
         End If
      Next i
   End Sub
   Public Function prime(ByVal n As Integer)As Boolean
      Dim i As Integer
      For i=2 To n-1
      If【  】Then
          Exit For
      End If
   Next i
   If i=n Then
      prime=True
   Else
      prime=False
   End If

选项

答案 prime(i) And prime(i+2) , n Mod i=0

解析 此题prime函数用来判断参数n是否为素数,如果是,则返回True,否则返回0,判断素数的算法请参看相应章节,[15]处应填“n Mod i=0”。要找出100以内的所有孪生素数,可采用以下方法:可用循环变量i从第一个素数3开始判断该数和它的下一个奇数(只有奇数才有可能是素数)是否同时为素数,如果是,则把该数和它的下一个奇数输出,然后循环变量加2,接着进行判断……,此处判断某数是否为素数,可以通过调用函数Prime来实现,故[14]处应填“prime(i)And prime(i+2)”。
转载请注明原文地址:https://jikaoti.com/ti/wXq0FFFM
0

最新回复(0)