VB作业。急!80个随机数选出素数、奇数和偶数

1.将随机产生的80个整数存入数组,按每行10个数输出到窗体或文本框中。2.偶数和奇数也分别存入数组,将排好序的偶数和奇数分别输出到窗体或两个文本框中。3.用Sub子过程或Function函数过程判断随机整数是否为素数。4.将素数按每行10个数在窗体或文本框中输出。5.将素数的个数及求和结果输出到窗体或文本框中。要三种不同的,麻烦啦,谢谢!!!

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
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-28
太乱了
相似回答