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

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

Как организовать логические операции над вещественными числами?

Ответ
Поиск в этой теме
Непрочитано 14.02.2020, 14:57
Как организовать логические операции над вещественными числами?
nickname2019
 
Регистрация: 18.11.2019
Сообщений: 1,519

Мне нужно организовать основные логические операции над числами с плавающей точкой (например - X и Y).

Как организовать операции AND и OR я разобрался.

X AND Y эквивалентно X*Y (умножить).

X OR Y эквивалентно X+Y (сложить).

Не могу понять, как сделать оператор NOT.
Просмотров: 5253
 
Непрочитано 21.02.2020, 11:16
#21
bigden


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


Offtop:
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Вариант русского языка программирования, кажется, в 1С реализован. Выглядело действительно дико
однакож такой язык любой бухгалтер осваивает запросто. и клепает там что-то. а иностранный является препятствием, нужен специалист, которого пять лет нужно обучать
bigden вне форума  
 
Непрочитано 22.02.2020, 20:37
#22
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,040


Цитата:
Сообщение от nickname2019 Посмотреть сообщение
Да. Когда переменная где то создана, но не инициализирована значением.
вы ассемблер пишете? на языках высокого уровня обычно сам компилятор вставляет инструкции при присвоению дефолтного значения переменной по ее типу при отсутствии явной инициализации.
Сергей812 вне форума  
 
Автор темы   Непрочитано 23.02.2020, 09:21
#23
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
вы ассемблер пишете? на языках высокого уровня обычно сам компилятор вставляет инструкции при присвоению дефолтного значения переменной по ее типу при отсутствии явной инициализации.
Я пишу и скрипт и интерпретатор для него, когда инструкции языка распознаются интерпретатором и вызываются те или иные команды. Сам интерпретатор и базовые команды написаны на c++. Соответственно, когда переменная появляется в тексте программы (программу пишет юзер), мне самому (так как я пишу интерпретатор) приходится выделять под нее память и инициализировать либо NULL, либо значением.
Юзер, соответственно, сам создает команды на этом скрипте, названия которому пока нет.

Скрипт напоминает бэйсик, только нетипизированный.


Окончательная версия логических операций (с учетом того, что ноль и отрицательные числа - false) имеет вид
X OR Y эквивалентно MAX(X,Y)
X AND Y эквивалентно MIN(X,Y)

NOT X получается более сложным оператором

Код:
[Выделить все]
  const tool=0.00001;//точность вычислений

  double NOT(double X){
  if (abs(X)>tool){//не равно нулю
    X=(-1)*X;//меняем знак
  }else{
    X=1;//для нуля делаем просто положительным числом, пусть это будет единица
  }
  return X;
}

Последний раз редактировалось nickname2019, 23.02.2020 в 09:56.
nickname2019 на форуме  
 
Непрочитано 23.02.2020, 10:20
#24
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,040


а вы принимаете в расчет, что с этим придумыванием экзотических записей операций в своем скриптовом языке в итоге получиться как с лиспом - что он стоит "отдельно" от других языков программирования вследствие своей списочной сущности, синтаксиса и прочего? Для обычного пользователя лучше вообще что-то визуальное делать, со всякими мастерами-помощниками пошаговыми, имхо. А для продвинутых предоставлять API.
Сергей812 вне форума  
 
Автор темы   Непрочитано 23.02.2020, 10:45
#25
nickname2019


 
Регистрация: 18.11.2019
Сообщений: 1,519


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
а вы принимаете в расчет, что с этим придумыванием экзотических записей операций в своем скриптовом языке в итоге получиться как с лиспом - что он стоит "отдельно" от других языков программирования вследствие своей списочной сущности, синтаксиса и прочего? Для обычного пользователя лучше вообще что-то визуальное делать, со всякими мастерами-помощниками пошаговыми, имхо. А для продвинутых предоставлять API.
Вы подняли тему, до решения которой я пока не дошел.

Я пока думаю, что нужно дать возможность из скрипта вызывать лисповые функции, которые будет выполнять внешний обработчик (в моем случае, обработчик - автокад, и скрипт выполняется внутри автокада). Соответственно, мне нужно будет придумать механизм передачи переменных в лисп-функцию и получения результатов назад.

Мой скриптовый язык нетипизированный и не объектно-ориентированный, фактически это просто набор полезных функций. Предоставление API ничего не даст. Управление порядком вызова функций осуществляется скриптом. Как максимум - можно дать пользователю генерировать произвольные скрипты и запускать на выполнение.

Но автоматизация скрипта - это я не скоро буду делать. Я еще с базовые функции не совсем закончил.

Последний раз редактировалось nickname2019, 23.02.2020 в 12:58.
nickname2019 на форуме  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Как организовать логические операции над вещественными числами?

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возможно ли организовать деформационный шов в существующей фундаментной плите Igor1985 Основания и фундаменты 15 08.11.2016 15:52
Как в Solidworks скрыть/неотображать отдельные операции. Трубопровод. vamesc SolidWorks 3 08.10.2014 19:03
Возможны ли булевы операции над сетями? Tannik AutoCAD 6 14.02.2011 13:38
Как пристроить вплотную новую несущую стену к старой и при этом организовать фундамент Lexa Основания и фундаменты 4 05.10.2009 11:03
Как организовать уловие функцией if? Kostinok Программирование 6 30.07.2008 10:07