我有一个结构数组
Private Type udtSingle
Dim Count As Long
Dim Value As Single
end Type
Private m(2) As udtSingle
假设数组是这样填充的:
m(0).Count = 5
m(0).Value = 100
m(1).Value = 1
m(1).Count = 10
你可以看到我们有 5*100 和 1*10。
计算平均值的最佳方法是什么?
for i as integer = 0 to m.upperbound()
cAll += m(i).Count * m(i).Value
iCount+=m(i).Count
next i
dim average as currency
average = cAll / iCount
那行得通,但我确实有很多 .Count 和高 .Value,而且我害怕溢出。
请问我还能做什么?
如果数组变得非常大,无论如何我都会溢出。我不能在 for-next-statement 中重新计算平均值吗?我想是这样,但我能想到一个优雅的解决方案。
ps:是的,我知道,代码是一种伪代码......