Сравнение фактов

Задача 1

Проверить два факта на равенство.

aaa.
xxx.
yyy.

f(X, Y) :- not(X = Y), write("NOT EQUAL"); write("YES EQUAL").

Тестируем программу.

f(aaa, aaa).

f(aaa, yyy).

Задача 2

Считать два факта с клавиатуры.

Проверить факты на равенство.

listing.
:- dynamic a/1.
:- dynamic b/1.

true.

saveA(X) :- assert(a(X)); true.
deleteA :- retract(a(X)); true.

saveB(X) :- assert(b(X)); true.
deleteB :- retract(b(X)); true.

reading :- deleteA, deleteB,
           read(A), nl,
           read(B), nl, 
           saveA(A),
           saveB(B),
           true.


f(X, Y) :- not(X = Y), write("NOT EQUAL"); write("YES EQUAL").

main :- nl, reading, a(A), b(B), f(A, B), true.

Тестируем программу.

main.
alex.
maxim.

main.
george.
george.

Запускаем программу.

main.

Last updated

Was this helpful?