Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % 1
- имя(витя).
- имя(юра).
- имя(миша).
- место(слева).
- место(посередине).
- место(справа).
- левее(P1, P2) :- место(P1), место(P2),
- (P1 = слева, P2 = посередине;
- P1 = слева, P2 = справа;
- P1 = посередине, P2 = справа).
- решение1(N1, P1, N2, P2, N3, P3) :-
- N1 = витя, левее(P1, P3),
- N2 = юра,
- N3 = миша, левее(P3, P2),
- P1 \== P2, P2 \== P3, P3 \== P1.
- % решение1(N1, P1, N2, P2, N3, P3).
- %3
- дерево(тополь).
- дерево(берёза).
- дерево(липа).
- дерево(клён).
- дерево(сосна).
- дерево(ель).
- место1(1).
- место1(2).
- место1(3).
- место1(4).
- место1(5).
- место1(6).
- comp(X, Y):-дерево(X), X = тополь, место1(Y).
- comp(X, Y):-дерево(X), X = берёза, место1(Y).
- comp(X, Y):-дерево(X), X = липа, место1(Y).
- comp(X, Y):-дерево(X), X = клён, место1(Y).
- comp(X, Y):-дерево(X), X = сосна, место1(Y).
- comp(X, Y):-дерево(X), X = ель, место1(Y).
- решение2(X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6):-
- X1 = тополь, comp(X1, Y1),
- X2 = берёза, comp(X2, Y2),
- X3 = липа, comp(X3, Y3),
- X4 = клён, comp(X4, Y4),
- X5 = сосна, comp(X5, Y5),
- X6 = ель, comp(X6, Y6),
- Y1 < Y2, Y2 < Y3, Y4 > Y3, Y5 < Y1, Y5 > Y6.
- % решение2(X1, Y1, X2, Y2, X3, Y3, X4, Y4, X5, Y5, X6, Y6).
- % 3
- имя1(петя).
- имя1(лена).
- имя1(таня).
- животное(собака).
- животное(кошка).
- животное(хомяк).
- соответствие(N, A) :- имя1(N), N = петя, животное(A), not(A=кошка), not(A=хомяк).
- соответствие(N, A) :- имя1(N), N = лена, животное(A).
- соответствие(N, A) :- имя1(N), N = таня, животное(A), A=кошка.
- решение3(N1, A1, N2, A2, N3, A3) :-
- N1 = петя, соответствие(N1, A1),
- N2 = лена, соответствие(N2, A2),
- N3 = таня, соответствие(N3, A3),
- A1 \== A2, A2 \== A3, A1 \== A3.
- % решение3(N1, A1, N2, A2, N3, A3).
- % 4
- имя2(белокуров).
- имя2(рыжов).
- имя2(чернов).
- цвет(блондин).
- цвет(брюнет).
- цвет(рыжий).
- соответствие1(N, C) :- имя2(N), N = белокуров, цвет(C), not(C = блондин), not(C = брюнет).
- соответствие1(N, C) :- имя2(N), N = чернов, цвет(C), not(C = брюнет).
- соответствие1(N, C) :- имя2(N), N = рыжов, цвет(C), not(C = рыжий).
- решение4(N1, C1, N2, C2, N3, C3):-
- N1 = белокуров, соответствие1(N1, C1),
- N2 = рыжов, соответствие1(N2, C2),
- N3 = чернов, соответствие1(N3, C3),
- C1 \== C2, C2 \== C3, C1 \== C3.
- % решение4(N1, C1, N2, C2, N3, C3).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement