Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.12.2011, 23:33   #1
pennylane
Новичок
Джуниор
 
Регистрация: 30.12.2011
Сообщений: 1
По умолчанию visual prolog - система выноса диагнозов

помогите, пожалуйста
никогда не работала в этом языке, но задали задание и не отвертется
нашла в интернете пример (система выносов диагнозов)
в чем-то ошибка, а я не разберусь
ниже код:

domains
database
xpositive(symbol,symbol)
xnegative(symbol,symbol)
predicates
Zastavka.
do_expert.
do_consulting
ask(symbol,symbol)
elem_is(symbol)
positive(symbol,symbol)
negative(symbol,symbol)
remember(symbol,symbol,symbol)
clear_facts
goal
Zastavka,
do_expert.
clauses
Zastavka:-
makewindow(1,10,31,"",0,0,25,80),
nl,nl,nl,
write("Expertnaya systema "),nl,nl,
write(Kursovaya rabota: Pomosh' medikam v postanovke diagnoza"),nl,
nl,nl,nl,nl,nl,nl,nl,
write("vipolnil: "),nl,
write("proveril:"),nl,nl,nl,nl,nl,n l,nl,nl,
write("61-06"),nl,
write("AFCHGU"),nl,
write(""),nl,nl,
readchar(_),removewindow(1,1).
do_expert:-
makewindow(1,7,7," *** Expert's System *** ",1,3,22,71),
nl,write(" ----------------------------------------------"),
nl,write(" Postanovka diagnoza "),
nl,write(" "),
nl,write(" Please answer the qustions 'yes' or 'no'. "),
nl,write(" ----------------------------------------------"),
nl,nl,
do_consulting,nl,
readchar(_),
removewindow,
exit.
do_consulting:-
elem_is(X),!,nl,
write("Vash diagnoz: ",X,"."),nl,
clear_facts.
do_consulting:-
nl,write("Ssory,vash diagnoz ne ustanovlen !"),
clear_facts.
ask(X,Y):-
write(" Doctor> U vas est' ",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,yes):-
asserta(xpositive(X,Y)).
remember(X,Y,no):-
asserta(xnegative(X,Y)),
fail.
clear_facts:-
retract(xpositive(_,_)),
fail.
clear_facts:-
retract(xnegative(_,_)),
fail.
elem_is("Gripp (Antigrippin)"):-
positive(elem,"golovnaya bol"),
positive(elem,"kashel"),
positive(elem,"nasmork"),
positive(elem,"slabost"),
positive(elem,"visokaya temperatura"),!.
elem_is("ORVI (Fervex)"):-
positive(elem,"kashel"),
positive(elem,"nasmork"),
positive(elem,"slabost"),
positive(elem,"bol v gorle"),!.
elem_is("Migren (Migrenol)"):-
positive(elem,"golovnaya bol"),
positive(elem,"slabost"),
positive(elem,"toshnota"),!.
elem_is("Gipovitaminoz (Duovit)"):-
positive(elem,"golovnaya bol"),
positive(elem,"slabost"),
positive(elem,"plohoi son"),!.
elem_is("Gastrit (Gastrofarm)"):-
positive(elem,"slabost"),
positive(elem,"toshnota"),
positive(elem,"izghoga"),!.
elem_is("Bessonica (Novo-Passit)"):-
positive(elem,"slabost"),
positive(elem,"plohoi son"),
positive(elem,"razdrazhimost'"),!.
elem_is("Laringit (Antibiotiki)"):-
positive(elem,"kashel"),
positive(elem,"bol v gorle"),
positive(elem,"ohriplost'"),!.
elem_is("Faringit (Antibiotiki)"):-
positive(elem,"slabost"),
positive(elem,"kashel"),
positive(elem,"bol v gorle"),!.
elem_is("Faringit (Antibiotiki)"):-
positive(elem,"visokaya temperatura"),
positive(elem,"kashel"),
positive(elem,"bol v gorle"),!.
elem_is("Jazva zheludka (Antibiotiki)"):-
positive(elem,"slabost"),
positive(elem,"toshnota"),
positive(elem,"izghoga"),
positive(elem,"pohudanie"),!.
pennylane вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Visual Prolog anechka_13 Помощь студентам 0 21.12.2011 19:50
Visual Prolog уравнение andresan Помощь студентам 1 07.12.2011 21:21
Visual Prolog 7.3 ZvEr_HaCkEr Софт 5 04.09.2011 09:03
задача на visual prolog sjua Помощь студентам 0 30.11.2010 21:38