羊肉加工厂赚钱吗:急救,一条简单的vb题~~~~~~~~~
来源:百度文库 编辑:杭州交通信息网 时间:2024/10/06 05:53:22
Dim Number(1 To 9) As Double
Dim Ave As Double
Dim MaxNum, MinNum As Double
Dim i As Integer
MaxNum = Number(1)
MinNum = Number(1)
Ave = Number(1)
For i = 2 To 9
If Number(i) > MaxNum Then
MaxNum = Number(i)
End If
If Number(i) < MinNum Then
MinNum = Number(i)
End If
Ave = Ave + Number(i)
Next i
Ave = (Ave - MaxNum - MinNum) / 7
msgbox "最后得分:" & Cstr(Ave)
垃圾,这怎么说啊
IT‘S EASY
用排序做
if
else 来做
1先定义一个公有变量数组;
2然后每次输入分数用数组存着;
3接着循环数组找出最低分和最高分去掉;
4最后对剩下的求平均值
如果你用 Split()和 InputBox()的串联一次索取所有九个分数(分数之间以空格隔开),
完整的答案可以不出十行:
scoreArray = Split(InputBox("Please enter all nine scores (separate them with space)."))
Dim min As Single, max As Single, sum As Single
min = scoreArray(0)
max = min
For Each score In scoreArray
If min > score Then min = score
If max < score Then max = score
sum = sum + score
Next
MsgBox "The final score is " & Format((sum - min - max) / 7, "Fixed")
---------------------------------------------------------------------------------------------
另一方面,上面的 VB6 程序如果改用 Python 编写,只需要两行:
scores = [ float( x ) for x in
raw_input( 'Please enter all nine scores (separate them with space): ' ).split( ) ]
print 'The final score is %.2f' % ( ( sum( scores ) - min( scores ) - max( scores ) ) / 7 )