float keepMeasureUniStable(int intervalT, int totalCnt)
{
if(totalCnt <3)
return 0.0;
vector<float> valVec;
for(int i=0;i<totalCnt;i++)
{
float val = measureAndGetVal();
valVec.push_back(val);
if(i>=3)
{float delta1 = valVec[i]-valVec[i-1;
float delta2 = valVec[i]-valVec[i-2];
float delta3 = valVec[i-1]-valVec[i-2];
if(fabs(delta1)<fabs(valVec[i-1]0.01) && fabs(delta2)<fabs(valVec[i-2]0.01
&&fabs(delta3)<fabs(valVec[i-2]*0.01))
{
return(valVec[i]+valVec[i-1]+valVec[i-2])/3;
}
}
Sleep(intervalT);
}
return (valVec[i-1]+valVec[i-2]+valVec[i-3])/3;
}
CString tmp;
FILE * fstream;
_tfopen_s(&fstream, L"test.txt", L"wt,ccs=UTF-8");
CStdioFile f(fstream);
f.writeString(L"");
f.close;
网友评论