Поиск:

Ответ в темуСоздание новой темы Создание опроса
> пролог динамические процедуры, автор нуб 
V
    Опции темы
sadgb
Дата 12.9.2008, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 21.10.2007

Репутация: 1
Всего: 1



всем привет ) 
столкнулся с небольшой проблемой . 
у меня есть какая то большая сложная логичская формула , я разбил её на подформулы и сделал все необходимые процедуры для её вычисления . Ну вот в частности небольшая вырезка из кода 


formule(A,B,C,D,E):-
    implication(subf1(A,B,C,D,E),subf2(A,B,C,D,E)).

главная формула представляет собой импликацию 2 подформул , как видите всё от 2-х переменных. 
Необходимо сделать возможность изменения формулы, то есть например заменить импликацию на логическое умножение  


formule(A,B,C,D,E):-
    &(subf1(A,B,C,D,E),subf2(A,B,C,D,E)).

я думал что можно как с фактами и побежал писать :-dynamic formule/5. 
На что мне компилятор сказал что так делать нельзя ибо 

'$set_predicate_attribute'/3: No permission to modify static_procedure 'formule/5' (procedure has active clauses)

подскажите как можно по ходу выполнения программы менять процедуры или подскажите другие пути сделать поддержку корректировки формулы . 


спасибо  smile 

Это сообщение отредактировал(а) sadgb - 15.9.2008, 07:53
PM MAIL   Вверх
sadgb
Дата 15.9.2008, 07:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 21.10.2007

Репутация: 1
Всего: 1



всем спасибо.... сделал процедуру которая в зависимости от факта вычисляеться по разному... не самое лучшее решение но выбора не было
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума Prolog
Void
  • Пожалуйста, создавайте темы с содержательными названиями.
  • Уважаемые учащиеся, здесь всегда рады помочь Вам, но не делать за Вас вашу работу. У вас гораздо больше шансов получить помощь, если Вы приложите усилия и поделитесь с нами проблемами и результатами. В противном случае добро пожаловать в раздел Центр Помощи.
  • Получив ответ на интересующий Вас вопрос, не забудьте пометить его как решённый.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Prolog | Следующая тема »


 




[ Время генерации скрипта: 0.0619 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.