用VB编程打印100~300之间的所有素数

来源:百度知道 编辑:UC知道 时间:2024/05/12 13:58:33

Private Sub Command1_Click()
Dim i As Integer
Dim j As Integer
For i = 100 To 300
For j = 2 To i
If i Mod j = 0 Then
Exit For
End If
Next j
If j = i Then Print i;
If i Mod 40 = 0 Then Print Chr(13)
Next i
End Sub

还有当值比较大时候花费的时间更加短的:
Dim n%, i%, k%
For n = 200 - 1 To 300 Step 2 '大于2的偶数肯定不是素数,但起始是偶数 所以-1
k = Int(Sqr(n)) '根据定理,这里可以减少计算量,当值特别大时候这个是非常重要的,这是效率问题!
For i = 2 To k
If n Mod i = 0 Then Exit For
Next i
If i > k Then Debug.Print n,
Next n