Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- %szukanie potwierdzenia cechy obiektu w dynamicznej bazie
- positive(X,Y) :-
- xpositive(X,Y),!.
- positive(X,Y) :-
- not(xnegative(X,Y)), ask(X,Y,yes).
- negative(X,Y) :-
- xnegative(X,Y),!.
- negative(X,Y) :-
- not(xpositive(X,Y)) ,
- ask(X,Y,no).
- %zadawanie pytań użytkownikowi
- ask(X,Y,yes) :-
- write(X), write(' it '),write(Y), write('\n'),
- read(Reply),
- sub_string(Reply,0,1,_,'y'),!,
- remember(X,Y,yes).
- ask(X,Y,no) :-
- write(X), write(' it '),write(Y), write('\n'),
- read(Reply),
- sub_string(Reply,0,1,_, 'n'),!,
- remember(X,Y,no).
- %zapamiętanie odpowiedzi w dynamicznej bazie
- remember(X,Y,yes) :-
- asserta(xpositive(X,Y)).
- remember(X,Y,no) :-
- asserta(xnegative(X,Y)).
- %uruchomienie programu
- run :-
- vehicle_is(X),!,
- write('\nYour vehicle may be a(n) '),write(X),
- nl,nl,clear_facts.
- run :-
- write('\nUnable to determine what'),
- write('your vehicle is.\n\n'),clear_facts.
- %wyczyszczenie zawartości dynamicznej bazy
- clear_facts :-
- retract(xpositive(_,_)),fail.
- clear_facts :-
- retract(xnegative(_,_)),fail.
- clear_facts :-
- write('\n\nPlease press the space bar to exit\n').
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement