用VB编出由1到100里有多少个素数

来源:百度知道 编辑:UC知道 时间:2024/09/25 05:24:51
要求用两种以上的方法

如果一个数a不能被2到a/2的数整除,那么就是素数,或者,如果不能被2到sqr(a)的数整除,也是素数。
所以,判断素数的过程可以编写为:
(1)
Private Function isprime (n As integer) As Boolean
Dim i As integer
isprime = false
For i = 2 To n/2
If n Mod i = 0 Then Exit function
Next i
isprime = True
End Function

(2)
Private Function isprime (n As integer) As Boolean
Dim i As integer
isprime = false
For i = 2 To sqr(n)
If n Mod i = 0 Then Exit function
Next i
isprime = True
End Function

主程序可以编写为:
Private Sub Form_Click()
Dim i As integer, num as integer
For i = 1 To 100
If isprime(i) Then
print i;
num = num + 1
if num mod 5 = 0 then print
End If
Next i
print
Print "从1到100共有" & num & "个素数"
End Sub