| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Почему Autolisp оперирует только целыми значениями?

Почему Autolisp оперирует только целыми значениями?

Ответ
Поиск в этой теме
Непрочитано 13.11.2017, 11:15 #1
Почему Autolisp оперирует только целыми значениями?
Zemlemer
 
Регистрация: 13.11.2017
Сообщений: 31

Доброго дня! AutoCad 2014. Если кратко:

(rtos (/ 15 2) 2 10)

"7.0000000000"
_$

Или так:

(* 2 (/ 15 2))

14
_$

Полагаю есть переменная, отвечающая за точность вычислений, но какая?

P. S.
Заранее извиняюсь, если напутал чего-нибудь в разделах.
Просмотров: 1843
 
Непрочитано 13.11.2017, 11:32
1 | 1 #2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832


Сравни
(rtos (/ 15 2) 2 10)
(rtos (/ 15. 2) 2 10)

Если делишь целое на целое, то получаешь целое.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 08.12.2017, 14:07
#3
Zemlemer


 
Регистрация: 13.11.2017
Сообщений: 31


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Сравни
(rtos (/ 15 2) 2 10)
(rtos (/ 15. 2) 2 10)

Если делишь целое на целое, то получаешь целое.
Если правильно понял, то автокад без rtos вычисляет все в действительные числа.
P. S. Спасибо за ответ, долго и безуспешно искал переменную, отвечающую за это.
Zemlemer вне форума  
 
Непрочитано 08.12.2017, 14:18
1 | #4
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832


Исключи rtos и выполни в VLIDE:
(/ 15 2)
(/ 15 2.)
(/ 15. 2)
(/ 15. 2.)
Сравни результаты.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 11.12.2017, 13:10
#5
Zemlemer


 
Регистрация: 13.11.2017
Сообщений: 31


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Исключи rtos и выполни в VLIDE:
(/ 15 2)
(/ 15 2.)
(/ 15. 2)
(/ 15. 2.)
Сравни результаты.
Вот оно что! Дело в точке! Спасибо!
Zemlemer вне форума  
 
Непрочитано 11.12.2017, 14:58
#6
Setvar


 
Регистрация: 10.02.2007
Москва
Сообщений: 611


Осознал, значит.
Попробуй выполнить следующие выражения в командной строке AutoCAD (VLIDE здесь ни к чему):
Код:
[Выделить все]
(/ 15 2)
(/ (float 15) 2)
(/ 15 (float 2))
(/ (float 15) (float 2))
Setvar вне форума  
 
Непрочитано 11.12.2017, 15:12
#7
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832


В данном конкретном случае использовать float, думаю, не обязательно. Можно поступить значительно проще: (* 15 0.5)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.12.2017, 15:30
#8
Setvar


 
Регистрация: 10.02.2007
Москва
Сообщений: 611


Да это как угодно, если понимаешь разницу между целыми числами и вещественными.
Название темы
Почему Autolisp оперирует только целыми значениями?
слишком самоуверенно и категорично.
А потом вдруг выясняется, что виновата точка. Проще не бывает.
Setvar вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Почему Autolisp оперирует только целыми значениями?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
SW 2014 Возможно ли в эскизе выбрать только штриховку? voverrr SolidWorks 0 10.09.2016 12:37
Почему "балка" из уголка считается только на предельную гибкость в SCAD? Emc Металлические конструкции 7 20.08.2016 12:38
Огнезащитное покрытие на монтаже. Почему? Сазоныч Конструкции зданий и сооружений 7 25.10.2011 15:51
Почему выполненяется только 1 sql запрос к ADODB без использования базы данных по умолчанию? Дима_ Программирование 8 26.02.2009 08:50
Почему field возвращает координаты объекта только в мировой системе координат? stumpel AutoCAD 7 20.02.2009 12:43