«Или» процедура в прологе
Я делаю прологическую программу для колледжа, которая немного похожа на игру cluedo. У меня шесть подозреваемых с разными чертами:
suspect(Name, Age, Weapon, Shape, Object, Shoes)
Цель состоит в том, чтобы реализовать ряд подсказок, чтобы в программе говорилось, какие разные черты у всех шести подозреваемых. Например: я
suspect(Hannibal Lecter,67,knife,'in good shape',mac,'high heels')
у меня возникли проблемы, пытаясь реализовать ключ
or(suspect1, suspect2, suspect3, listOfSuspects)
Эта подсказка должна сказать, чтоsuspect1
имеет те же черты, что иsuspect2
ИЛИ какsuspect3
но не оба. Пример: Чтобы указать, что подозреваемый, которому 50 лет, имеет кольцо или макинтош, но не оба:
or(suspect(_, 50, _, _, _, _),
suspect(_, _, _, _, ring, _),
suspect(_, _, _, _, mac, _), listOfSuspects).
Любая помощь будет оценена.