0

この演習で最初に必要なことは、それぞれ 1 つの場所の存在を示すいくつかの事実をリストに入れることです。誰か助けてください。

example.
exists(place).
exists(place2).

これまでのコード:

listarB([]).
listarB([B|T]):- exists(B),listarB(T).

今、リストのリストを取得しようとしました。必要な各リストは、取得しようとしていた各場所の引数として保持されます。
場所のリストを取得したので、それぞれが引数として持っているリストを取得し、それらを別のリスト([HL|TL])に格納しようとしました

これまでのコード:

listListBus([],[]).
listListBus([HB|TB],[HL|TL]) :-
   HB = base(_,[_|_],HL),
   listListBus(TB,TL).      
4

1 に答える 1

0

findall/3「存在する」すべての場所を収集するために使用する必要があります。

listarB(L):-
  findall(B, exists(B), L).
于 2013-02-28T20:17:05.367 に答える