Здравствуйте, AMogil, Вы писали:
AM>Здравствуйте, Aloner, Вы писали:
A>>Здраствуйте,
A>>Сейчас пишу программу в которой идет обработка математической ситсемы (Методом Гауса).
A>>Может уже и поднималась такая тема, но я ее не нашел.
A>>Вот интерестный случай и как с этим бороться.
A>>A>>double a=0.12;
A>>int b = 12;
A>>double c = a - double(b)*0.01;
A>>
A>>Теоретически с должна быть равна 0 но на практике получается ~6E-18.
AM>А в чем проблема то?
AM>Типа, числа с плавающей запятой.
AM>Алексей.
не совсем проблема, неприятность скорей.
У меня есть SCROLLBAR при помощи которого выберается нужные значения и массива.
МАССИВ double [ТОК][ТЕМПЕРАТУА]
Стравнивается ТОК с SCROLLBAR->POSITION * 0.01 вот и получается что например:
SCROLLBAR->POSITION = 3
ТОК = 0.03
и условие (ТОК == SCROLLBAR->POSITION * 0.01) несправедливо.
вышел из ситуации след. образом.
if (fabs(ТОК — double(SCROLLBAR->POSITION) * 0.01)<0.001)
Хотел просто разобраться, правильно или нет.