int CalcAxis::calcAxis() { minAbsValue = INT_MAX / 2; minAbsLeft = INT_MAX / 2; for(resetIter(); !isIterEnd(); incIter()){ int curValue = calcWindow(); if(abs(minAbsValue) > abs(curValue)){ minAbsValue = curValue; minAbsLeft = curLeft; } } return minAbsLeft + dx / 2; }
int main() { char ch; while(fscanf(fin,"%c",&ch)!=EOF) { switch (ch) { case 'w': createWindow(); break; case 't': topWindow(); break; case 'b': bottomWindow(); break; case 'd': destroyWindow(); break; case 's': calcWindow(); break; } } return 0; }
int CalcAxis::calcAxis(){ int prevLeft = minLeft; minValue = FLT_MAX; minLeft = INT_MAX; for(resetIter(); !isIterEnd(); incIter()){ float curValue = calcWindow(); if(std::abs(minValue) > std::abs(curValue)){ minValue = curValue; minLeft = curLeft; } } if(minValue == FLT_MAX){ minLeft = prevLeft; return INT_MAX; } return minLeft + dx / 2; }