瓷肌五谷补水睡眠面膜:80分VB问题呀呀,,,高手指点一下拉

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/06 19:59:43
怎么样VB做一个 生成10个随机 计出最大或最小两数
然后在除去这两个数 在 求8数的平均数
老师说"用排序法"我一点不会
高手写代码出来
并说给我听听
解说解说

Dim i As Integer
Dim digit As Integer ' 最大随机数
Dim arr(9) As Integer

digit = 100
For i = 0 To 9
Randomize Timer
arr(i) = Fix(Rnd * digit)
Next

Dim lower As Integer
Dim higer As Integer
Dim sums As Integer

lower = 100
higer = 0

For i = 0 To 9
Dim j As Integer
j = arr(i)
List1.AddItem (arr(i))
If j < lower Then lower = j
If j > higer Then higer = j
sums = sums + j
Next

Text1.Text = lower
Text2.Text = higer
Text3.Text = (sums - lower - higer) / 8

Private Sub Form_Load()
Dim Num(8) As Integer
Dim Min As Integer
Dim Max As Integer
Dim sum As Double

Randomize '随机数种子
For i = 0 To 7
Num(i) = Rnd '产生随机数
Next i

Min = Num(0)'初始化
Max = Num(0)

For i = 0 To 7
If Min > Num(i) Then
Min = Num(i)’遍历数组找出最小
n = i’记录位置
End If

If Max < Num(i) Then
Max = Num(i)’遍历数组找出最大
m = i'记录位置
End If
Next i

For i = 0 To 7
If (i <> n And i <> m) Then sum = Num(i) / 8.0’排除最大最小值并求均值
Next i
'你所要求的结果再sum里面
End Sub

for i=1 to 10 then
Randomize
Num=Rnd()
Num=Int(26*Num)+65
str[i]=Num
end
for j=10 to 1 step=-1 then
for i=1 to j then
if str[i]>str[i+1] then
temp=str[i+1]
str[i+1]=str[i]
str[i]=temp
end
end
for i=2 to 9 then
sum+=str[i]
end
avg=sum/8
大致意思就是这样,我不用VB好久了,你看看,我觉得思路是正确的,不知道语法错误会有多少,你参考一下吧

a=max(s[10]);
b=min(s[10]);
c=(sum(s[10])-a-b)/8;