-1

これは私の課題の手がかりです:

ノーマ、アンディ、エドワード、オリビアの 4 人の運転手は、一時停止標識の走行、スピード違反、違法な左折、赤信号の 4 つの交通違反で起訴されました。手がかりを使用して、各容疑者が違反した法律を見つけます。

手がかり

  1. ノルマは赤信号も一時停止の標識も通さなかった。
  2. アンディはスピード違反で止められたことはありません。
  3. エドワードは違法な左折をした。
  4. オリビアは一時停止の標識で止まるように常に注意していました。

プロローグを使用して解決する必要があります。

これまでに次のコードを試しました。

violatated(Violation):-
member(Violation,[speeding,leftturn,stop,red]).

solve(S):-
S=[[Name1,Violation1],
   [Name2,Violation2],
   [Name3,Violation3],
   [Name4,Violation4]],

    %five drivers: Norma, Andy, Edward, Olivia
Name1 = norma,
Name2 = andy,
Name3 = edward,
Name4 = olivia,

violated(Violation1), violated(Violation2), violated(Violation3), violated(Violation4),
Violation1 \== Violation2, Violation1 \== Violation3, Violation1 \== Violation4,
Violation2 \== Violation1, Violation2 \== Violation3, Violation2 \== Violation4,
Violation3 \== Violation1, Violation3 \== Violation2, Violation3 \== Violation4,
Violation4 \== Violation1, Violation4 \== Violation2, Violation4 \== Violation3,

%Edward made an illegal left turn
Violation3 == leftturn,

%Norma did not run either a red light or a stop sign
Violation1 \== red,
Violation1 \== stop,

%Andy was never stopped for speeding.
Violation2 \== speeding,

%Olivia was always careful to stop at a stop sign
Violation4 \== stop.

プロローグ初心者ですみません!

4

1 に答える 1