Сообщество программистов Autodesk в СНГ
ADN Club => AutoLisp / VisualLISP и DCL => Тема начата: CrazyBullet от 12-08-2020, 09:11:29
Название:
(= (/ 0.009 3) 0.003) -> nil
Отправлено:
CrazyBullet
от
12-08-2020, 09:11:29
Собственно вопрос в теме, а (= (/ 0.09 3) 0.03) -> T
Название:
Re: (= (/ 0.009 3) 0.003) -> nil
Отправлено:
Александр Ривилис
от
12-08-2020, 10:50:03
CrazyBullet
,
Так и должно быть. Плавающие числа (float/double) нельзя сравнивать на равенство.
Можно так:
Код - Auto/Visual Lisp
[Выбрать]
(
equal
(
/
0.009
3
)
0.003
0.000001
)
т.е. сравнение с заданной точностью
Интересно посмотреть на результат:
(https://live.staticflickr.com/65535/50217524356_a0f3ffd51a_o.png)