Исправление неточных математических результатов VBSCRIPT из-за округления - PullRequest
0 голосов
/ 29 марта 2010

Попробуйте запустить это в файле .VBS

MsgBox(545.14-544.94)

Вы получите аккуратный небольшой ответ 0.199999999999932!

Эта проблема округления также возникает, к сожалению, в Sin (2* pi) , поскольку VB может только когда-либо видеть (определенную пользователем) переменную pi с точностью до 3.14159265358979 .

Округление вручную (и потеря точности) - единственный способ улучшитьрезультат?Какой самый эффективный способ решения этой проблемы?

1 Ответ

2 голосов
/ 29 марта 2010

Так работают числа с плавающей запятой, поэтому следует ожидать небольших неточностей. Для лучшего вывода проще всего отобразить результаты, округленные до меньшего числа цифр.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...