Мой код Пролога должен возвращать да (или нет) после ввода запроса, но вместо этого возвращает «true?» и требуя, чтобы я нажал клавишу ввода, чтобы получить «да».
Проблема с русскими куклами, порядок кукол от внешнего к внутреннему: катрина-> ольга-> наташа-> ирина. DirectlyIn(X,Y) имеет значение true, если X находится непосредственно внутри Y, и содержит значение true, если X содержит Y.
directlyIn('irina', 'natasha').
directlyIn('natasha', 'olga').
directlyIn('olga', 'katrina').
///
contains(X, Y) :- directlyIn(Y, X).
contains(X, Y) :- directlyIn(Z, X), contains(Z, Y).
Из запроса ?- contains(katrina, irina).
я ожидал, что результат будет просто «да», но вместо этого он выводит «true ?» пока я не нажму ввод, а затем он выводит «да».