早教吧作业答案频道 -->其他-->
vb上机操作题关于数组随机产生N个(20《=n,=100)两位整数,找出其中的奇数、偶数和素数,并将奇数按升序排序,将偶数按降序排序,讲素数求和
题目详情
vb上机操作题关于数组
随机产生N个(20《=n,=100)两位整数,找出其中的奇数、偶数和素数,并将奇数按升序排序,将偶数按降序排序,讲素数求和
随机产生N个(20《=n,=100)两位整数,找出其中的奇数、偶数和素数,并将奇数按升序排序,将偶数按降序排序,讲素数求和
▼优质解答
答案和解析
Private Sub Form_Click()
Dim n%, a%(), j%(), O%(), s%()
Randomize
n = Val(InputBox("请输入要产生的随机数个数n:"))
ReDim a(n)
Print n; "个随机数为";
For i = 1 To n
a(i) = Int(Rnd * 81 + 20)
Print a(i);
Next
Print
'找出奇数
ReDim j(1)
k = 1
For i = 1 To n
If a(i) Mod 2 = 1 Then
j(k) = a(i)
k = k + 1
ReDim Preserve j(k)
End If
Next
'将奇数按升序排列
For i = 1 To k - 1
For m = 1 To k - 1 - i
If j(m) > j(m + 1) Then t = j(m): j(m) = j(m + 1): j(m + 1) = t
Next
Next
Print "其中奇数有:";
For i = 1 To k - 1
Print j(i);
Next
Print
'找出偶数
ReDim O(1)
k = 1
For i = 1 To n
If a(i) Mod 2 = 0 Then
O(k) = a(i)
k = k + 1
ReDim Preserve O(k)
End If
Next
'将偶数按升序排列
For i = 1 To k - 1
For m = 1 To k - 1 - i
If O(m) < O(m + 1) Then t = O(m): O(m) = O(m + 1): O(m + 1) = t
Next
Next
Print "其中奇数有:";
For i = 1 To k - 1
Print O(i);
Next
Print
'找出素数
Dim f As Boolean
ReDim s(1)
k = 1
For i = 1 To n
f = False
For m = 2 To Sqr(a(i))
If a(i) Mod m = 0 Then f = True: Exit For
Next
If Not f Then s(k) = a(i): k = k + 1: ReDim Preserve s(k)
Next
'素数求和
For i = 1 To k - 1
Sum = Sum + s(i)
Next
Print "素数的和为:"; Sum
End Sub
Dim n%, a%(), j%(), O%(), s%()
Randomize
n = Val(InputBox("请输入要产生的随机数个数n:"))
ReDim a(n)
Print n; "个随机数为";
For i = 1 To n
a(i) = Int(Rnd * 81 + 20)
Print a(i);
Next
'找出奇数
ReDim j(1)
k = 1
For i = 1 To n
If a(i) Mod 2 = 1 Then
j(k) = a(i)
k = k + 1
ReDim Preserve j(k)
End If
Next
'将奇数按升序排列
For i = 1 To k - 1
For m = 1 To k - 1 - i
If j(m) > j(m + 1) Then t = j(m): j(m) = j(m + 1): j(m + 1) = t
Next
Next
Print "其中奇数有:";
For i = 1 To k - 1
Print j(i);
Next
'找出偶数
ReDim O(1)
k = 1
For i = 1 To n
If a(i) Mod 2 = 0 Then
O(k) = a(i)
k = k + 1
ReDim Preserve O(k)
End If
Next
'将偶数按升序排列
For i = 1 To k - 1
For m = 1 To k - 1 - i
If O(m) < O(m + 1) Then t = O(m): O(m) = O(m + 1): O(m + 1) = t
Next
Next
Print "其中奇数有:";
For i = 1 To k - 1
Print O(i);
Next
'找出素数
Dim f As Boolean
ReDim s(1)
k = 1
For i = 1 To n
f = False
For m = 2 To Sqr(a(i))
If a(i) Mod m = 0 Then f = True: Exit For
Next
If Not f Then s(k) = a(i): k = k + 1: ReDim Preserve s(k)
Next
'素数求和
For i = 1 To k - 1
Sum = Sum + s(i)
Next
Print "素数的和为:"; Sum
End Sub
看了 vb上机操作题关于数组随机产...的网友还看了以下:
什么是有机物和无机物生活上,我们怎么区分有机物和无机物?他们都有什么特点?请不要乱转贴百度一大堆的 2020-05-16 …
初中信息技术课的讲课问题?再过几天我就要进行计算机讲课了,要求是面对评委进行20分钟的讲课,没有计 2020-05-16 …
按机械生产率计算的全船最短作业时间为( )小时。A.51.30B.51.58C.52.30D.53. 2020-05-19 …
某县农机厂生产一批插秧机,卖出一批后,还剩下总数的3/5,按2:7分配给甲乙两村,乙村比甲村多分配 2020-05-21 …
一飞行员驾驶飞机在做低空表演时,竖直拉升(水平速度很小,可以忽略),拉升到最高点时,飞机突发故障, 2020-06-29 …
vb上机操作题关于数组随机产生N个(20《=n,=100)两位整数,找出其中的奇数、偶数和素数,并 2020-07-23 …
农机厂生产柴油机原计划每天生产40台可以按时完成实际每天生产50台提前6天完成这批柴油机有多少台? 2020-11-27 …
高二概率题.十万火急,加50分.一个随机数生成器,设定每次按键从数字1和2中任产生一个数且数字1和2 2020-12-07 …
VB请VB高手指教急单击任务1按钮产生8个1位的随机正整数并求其和单击任务2按钮产生若干个随机正整数 2020-12-26 …
我们化学老师经常发讲义,内容比书要多,比如说铝,必修1上没有的铝热反应,在必修二存在,他直接就打印在 2020-12-27 …