Здравствуйте, Andir, Вы писали:
A>Здравствуйте, artgonch, Вы писали:
A>>
A>> if (fabs(m_f1 - f) < delta)
A>> DeleteRecord(i);
A>>
A>>Использую VS.NET 2002. Фугкция DeleteRecord() не вызыввется даже когда разность меньше погрешности. В чем может быть причина?
A>Наверное в том, что модуль разности больше погрешности ...
А вот слона-то я и не заметиол. Спасибо. A>С Уважением, Andir!
С уважением, Артем
Здравствуйте, Sergey, Вы писали:
S> Не, не так прямолинейно. "Банковское округление" — это, например (есть, вроде бы, несколько способов) когда 1.05 -> 1.1, S>а 2.05 -> 2.0. Если сумма цифр четная и последняя цифра — пятерка, округляем в одну сторону, нечетная — в другую. Ошибка не накапливается, если числа можно считать случайными.
Обратил внимание, что именно так округляет printf. Например, при формате %.1f. Во всяком случае на VC++ 6.0
Здравствуйте, Kaa, Вы писали:
Kaa>Когда — "тогда". Отождествляются только чиса с первыми тремя разрядами. В твоем примере это не так. Разряды различаются. Так, напимер, можно сравнивать деньги: целые — рубли, дробные — копейки. Без большой точности. Это, ты считаешь, не реальная задача? ;-))
нереальная
если нужны рубли и копейки, то все считается в целых числах в копейках, без всяких округлений
Здравствуйте, Кодт, Вы писали:
К>Банковское округление — это...
банковское округление — это такая штука, по которой можно книжку написать :)
есть миллион ситуаций, и каждой соответствует свой алгоритм округления.
потому что проблема обычно не в том, как округлить, а в том, что делать с остатком от округления.
Здравствуйте, jazzer, Вы писали:
J>Здравствуйте, Кодт, Вы писали:
К>>Банковское округление — это...
J>банковское округление — это такая штука, по которой можно книжку написать
J>есть миллион ситуаций, и каждой соответствует свой алгоритм округления. J>потому что проблема обычно не в том, как округлить, а в том, что делать с остатком от округления.
Здравствуйте, Шахтер, Вы писали:
J>>есть миллион ситуаций, и каждой соответствует свой алгоритм округления. J>>потому что проблема обычно не в том, как округлить, а в том, что делать с остатком от округления.
Ш>Отправить на счёт программисту.