Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [Visual Prolog] Экспертная система, Экспертная система 
:(
    Опции темы
diana_girl
Дата 30.1.2009, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Модернизировать код программы из Visual Prolog 5.2 в Visual Prolog 7.1

Код

/*5.МОЯ ФУТБОЛЬНАЯ КОМАНДА*/

  domains 
s= symbol 

database
  xpositive(s, s)
  xnegative(s, s)

predicates
do_expert_job
do_consulting
ask(s,s)
dog_is(s)    
it_is(s)

positive(s,s)
negative(s,s)
remember(s,s,s) 
clear_facts
goal
   do_expert_job. 
   clauses
do_expert_job :-

nl,write("* * * * * * * * * * * * * * * * * * * "),
nl,write(" ЭС, РАСПОЗНАЮЩАЯ ВАШУ ФУТБОЛЬНУЮ КОМАНДУ       "),
nl,write("                                      "),

nl,write("Пожалуйста, отвечайте на вопросы    "),

nl,write("'да' или 'нет'.    "),
nl ,write("* * * * * * * * * * * * * * * * * * * "),
nl,nl,
do_consulting,
write("Нажимайте кл. Esc."),nl,
readchar(_),

exit.
do_consulting :-
dog_is(X),!,nl,
write("ВАША ФУТБОЛЬНАЯ КОМАНДА ",X,"."),nl,
    clear_facts. 
do_consulting :-
  nl,write("ВЫ НЕ УВЛЕКАЕТЕСЬ ФУТБОЛОМ ! "),  clear_facts.
ask(X,Y) :-
write(" Вопрос :- ",X," it ",Y," ?"),
readln(Reply),
remember(X,Y,Reply).
positive(X,Y) :-
    xpositive(X,Y),!.
positive(X,Y) :-
not(negative(X,Y)),!,ask(X,Y).
negative(X,Y) :-
xnegative(X,Y),!.

remember(X,Y,да) :-
    asserta(xpositive(X,Y)).
     remember(X,Y,нет) :-
asserta(xnegative(X,Y)),!,fail.

clear_facts :-
retract(xpositive(_,_)),
    fail. 
    clear_facts :-
retract(xnegative(_,_)),
fail.
 dog_is("СПАРТАК") :-it_is("РУССКАЯ"),
positive(has,"преданные болельщики"), 
positive(has,"давние традиции"),
positive(has,"символ команды Титов"),!.
  dog_is("ЦСКА") :-
it_is("РУССКАЯ"),
positive(has,"преданные болельщики"),
positive(has,"особенная команда"),
positive(has,"символ команды Акинфеев"),!.
  dog_is("ЗЕНИТ") :-
it_is("РУССКАЯ"),
positive(has,"преданные болельщики"),
positive(has,"успешный клуб"),
positive(has,"символ команды Тимощук"),!.
  dog_is("МАНЧЕСТЕР ЮНАЙДЕТ") :-it_is("АНГЛИЙСКАЯ"),
positive(has,"лучшие болельщики"),
positive(has,"давние традиции"),
positive(has,"символ команды Криштиану Роналду"),!.
  dog_is("ЧЕЛСИ") :-it_is("АНГЛИЙСКАЯ"),
positive(has,"лучшие болельщики"),
positive(has,"особенная команда"),
positive(has,"символ команды Джон Терри"),!.
  dog_is("ЛИВЕРПУЛЬ") :-
  it_is("АНГЛИЙСКАЯ"),
positive(has,"лучшие болельщики"),
positive(has,"успешный клуб"),
positive(has,"символ команды Джеррард"),!.
  dog_is("ИНТЕР") :-
it_is("ИТАЛЬЯНСКАЯ"),
positive(has,"лучший фан-клуб"),
positive(has,"давние традиции"),
positive(has,"символ команды Ибрагимович"),!.
dog_is("РОМА") :-
it_is("ИТАЛЬЯНСКАЯ"),
positive(has,"лучший фан-клуб"),
positive(has,"особенная команда"),
positive(has,"символ команды Тотти"),!.
dog_is("МИЛАН") :-
it_is("ИТАЛЬЯНСКАЯ"),
positive(has,"лучший фан-клуб"),
positive(has,"успешный клуб"),
positive(has,"символ команды Зеедорф"),!.
dog_is("СЕВИЛЬЯ") :-
it_is("ИСПАНСКАЯ"),
positive(has,"классные болельщики"),
positive(has,"давние традиции"),
positive(has,"символ команды Луис Фабиано"),!.
dog_is("РЕАЛ") :-
it_is("ИСПАНСКАЯ"),
positive(has,"классные болельщики"),
positive(has,"особенная команда"),
positive(has,"символ команды Рауль"),!.
  dog_is("БАРСЕЛОНА") :-
it_is("ИСПАНСКАЯ"),
positive(has,"классные болельщики"),
positive(has,"успешный клуб"),
positive(has,"символ команды Пуйоль"),!.
  dog_is("МАРСЕЛЬ") :-
it_is("ФРАНЦУЗКАЯ"),
positive(has,"веселые болельщики"),
positive(has,"давние традиции"),
positive(has,"символ команды Бартез"),!.
  dog_is("БОРДО") :-
it_is("ФРАНЦУЗКАЯ"),
positive(has,"веселые болельщики"),
positive(has,"особенная команда"),
positive(has,"символ команды Зидан"),!.
  dog_is("ЛИОН") :-
it_is("ФРАНЦУЗКАЯ"),
positive(has,"веселые болельщики"),
positive(has,"успешный клуб"),
positive(has,"символ команды Малуда"),!.
  it_is("АНГЛИЙСКАЯ") :-
positive(has,"АНГЛИЙСКАЯ"),!.
  it_is("ИТАЛЬЯНСКАЯ") :-
positive(has,"ИТАЛЬЯНСКАЯ"),!.
 it_is("ИСПАНСКАЯ") :-
positive(has,"ИСПАНСКАЯ"),!.
it_is("РУССКАЯ") :-
positive(has,"РУССКАЯ"),!.
 it_is("ФРАНЦУЗКАЯ") :-
positive(has,"ФРАНЦУЗКАЯ"),!. 


Visual Prolog 7.1 качаем сдесь Vip 7.1
Серийник на Visual Prolog 7.1 если надо
Код

Begin License
[{Uwe Schwalm}]
[{}]
[{3EOYM7-3EOYWD-T6X13G}]
[{Visual Prolog 7.1 Commercial Edition}]
[{1 user license 2007.11.15}]
[{58Z161Z0Z0Z05577652053636877616C6DZAZA33454F594D372DBDZE215E}]
[{21D2828AZD2C31661C516025CD9C3AZ97B8140C9BDB1BD9D81DCB8C480ZC}]
[{BDB5B595C98DA5F5962C4226ZD9D346FDC288059678E4D106CD28C29E3A6}]
[{28Z8193060B88C11E365ZDZ0}]
End License

Visual Prolog 5.2 качаем сдесь Vip 5.2


Это сообщение отредактировал(а) diana_girl - 30.1.2009, 12:19
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

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

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


 




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


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

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