いくつかの事実に基づいて、Prolog を使用している最年長の人を見つけなければなりません。例えば:
age(john, 10).
age(mary, 15).
age(rose, 75).
age(jack, 49).
age(carl, 17).
age(lucy, 66).
コンソール出力は次のようになります。
?- oldest(rose).
True.
?- oldest(X).
X = rose.
私のコードは次のとおりですが、機能していません。
oldest(P) :- age(P, X) , age(_, Y) , X >= Y.
エラーが見つかりませんが、バックトラックに関連するものだと思います。誰か助けてくれませんか?私はプロローグが初めてです。