我来自发动机测试领域 我希望平均发动机排气压力值平均为1Hz。
我必须通过平均10来记录此压力值。
有人请在vb langauge中向我展示相同的代码。
我尝试使用以下代码
Dim averageData (9) as double
Dim dummyVar as integer
Dim sum as integer
Dim number as integer
对于1到10号 从这里开始,我必须在数组中获取数据并对数组元素求和并对其求平均值。在此之后,我必须为新集清除数组。该脚本将持续运行,直到进行后期测试。
答案 0 :(得分:1)
这是一种方法。它可以扩展到大量样本,而不会增加计算成本。
这是C'伪代码'对于这种常见的算法。
typedef struct
{
int next;
float sum;
float readings[10];
} ravg_data;
float runningAverage(float value, ravg_data* data)
{
data->sum += (value - data->readings[data->next]);
data->readings[data->next] = value;
if (++(data->next) >= 10)
data->next = 0;
return data->sum / 10;
}
初始化/重置时,只需使用
即可memset(&data, 0, sizeof(ravg_data));
你必须翻译成VB,这应该弥补你没有发布代码。