Выводит не все строчки ответа (Turbo Prolog)
Формулировка задачи:
Листинг программы
- predicates
- parents(String, String)
- man(String)
- woman(String)
- sister(String, String)
- brother(String, String)
- father(String, String)
- mother(String, String)
- grandfather(String, String)
- grandmother(String, String)
- clauses
- parents("Tom","Ellen").
- parents("Tom", "Chris").
- parents("Jane", "Ellen").
- parents("Jane", "Chris").
- parents("John", "Jane").
- parents("Eve","Tom").
- man("Tom").
- man("Chris").
- man("John").
- woman("Ellen").
- woman("Jane").
- woman("Eve").
- sister(X, Y) :- parents(Z, X), parents(Z, Y), woman(X), X<>Y.
- brother(X, Y) :- parents(Z, X), parents(Z, Y), man(X), X<>Y.
- father(X, Y) :- parents(X, Y), man(X), X<>Y.
- mother(X, Y) :- parents(X, Y), woman(X), X<>Y.
- grandfather(X, Y) :- parents(X,Z), parents(Z, Y), man(X), X<>Y.
- grandmother(X, Y) :- parents(X,Z), parents(Z, Y), woman(X), X<>Y.
- print:-sister(X,Y), write(X,"- sister -", Y), nl, fail.
- print:-brother(X,Y), write(X,"- brother -", Y), nl, fail.
- print:-father(X,Y), write(X,"- father -", Y), nl, fail.
- print:-mother(X,Y), write(X,"- mother -", Y), nl, fail.
- print:-grandfather(X,Y), write(X,"- grandfather -", Y), nl, fail.
- print:-grandmother(X,Y), write(X,"- grandmother -", Y), nl, fail.
- print.
- GOAL
- print,
- readln(I).
Решение задачи: «Выводит не все строчки ответа (Turbo Prolog)»
textual
Листинг программы
- sister(X, Y):- woman(X), parents(Z, X), parents(Z, Y).
- brother(X, Y):- man(X), parents(Z, X), parents(Z, Y).
- father(X, Y):- man(X),parents(X, Y).
- mother(X, Y):- woman(X), parents(X, Y).
- grandfather(X, Y):- man(X), parents(X,Z), parents(Z, Y).
- grandmother(X, Y):- woman(X), parents(X,Z), parents(Z, Y).
- print:-sister(X,Y), write(X),write('- sister -'), write(Y), nl, fail.
- print:-brother(X,Y), write(X),write('- brother -'), write(Y), nl, fail.
- print:-father(X,Y), write(X),write('- father -'), write(Y), nl, fail.
- print:-mother(X,Y), write(X),write('- mother -'), write(Y), nl, fail.
- print:-grandfather(X,Y), write(X),write('- grandfather -'), write(Y), nl, fail.
- print:-grandmother(X,Y), write(X),write('- grandmother -'), write(Y), nl, fail.
- print.
- parents('Tom','Ellen').
- parents('Tom', 'Chris').
- parents('Jane', 'Ellen').
- parents('Jane', 'Chris').
- parents('John', 'Jane').
- parents('Eve','Tom').
- man('Tom').
- man('Chris').
- man('John').
- woman('Ellen').
- woman('Jane').
- woman('Eve').
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д