Private Function SuShu(n As Integer) As Boolean 'å¤æææ°æ¯å¦ç´ æ°
Dim l As Integer, p As Integer
p = Int(Sqr(n))
For l = 2 To p
If n Mod l = 0 Then Exit For
Next l
If l > p Then SuShu = True
End Function
Private Sub Command1_Click()
Dim a(1 To 80) As Integer, b(1 To 80) As Integer, c(1 To 80) As Integer, d(1 To 80) As Integer
Dim PrimeCount As Integer, ArrPrime(40) As Integer Randomize
k = 1
m = 1
For i = 1 To 80
a(i) = Int(Rnd * 90) + 10
If a(i) Mod 2 = 0 Then
b(k) = a(i)
k = k + 1
Else
c(m) = a(i)
m = m + 1
End If
Next i
Print "80个éæºæ´æ°ï¼"
For i = 1 To 80
Print a(i);
If i Mod 10 = 0 Then Print
Next i
Print
Print "å¶æ°ï¼"
For i = 1 To k - 1
For j = i To k - 1
If b(i) > b(j) Then t = b(i): b(i) = b(j): b(j) = t
Next j
Print b(i);
If i Mod 10 = 0 Then Print
Next i
Print: Print
Print "å¥æ°ï¼"
For i = 1 To m - 1
For j = i To m - 1
If c(i) < c(j) Then t = c(i): c(i) = c(j): c(j) = t
Next j
Print c(i);
If i Mod 10 = 0 Then Print
Next
Print: Print
Print "ç´ æ°ï¼"
t = 0
For i = 1 To 80
If SuShu(a(i)) = True Then
d(i) = a(i)
t = t + 1
ArrPrime(PrimeCount) = d(i)
PrimeCount = PrimeCount + 1
Sum = Sum + d(i)
Print d(i);
If t Mod 10 = 0 Then Print
End If
Next i
Print: Print
Print "ç´ æ°ä¸ªæ°:" & PrimeCount & ""
Print
Print "ç´ æ°åï¼"; SumEnd Sub
温馨提示:答案为网友推荐,仅供参考