だから私はSWI-PrologでいくつかのPrologをやっていて、ちょっとした問題に出くわしました。入力リストを指定して、キューブのリストを作成する必要があります。私が現在持っているコードは
cubes([Head|Tail],Cubes) :-
cubes([Head|Tail],Cubes,[]).
cubes([Head|Tail],Cubes,ActualCubes) :-
X is Head^3,
append(ActualCubes,[X],NewCubes),
cubes(Tail,Cubes,NewCubes).
cubes([Tail],Cubes,ActualCubes) :-
X is Tail^3,
append(ActualCubes,[X],NewCubes),
Cubes is NewCubes.
私が実行すると、エラーが発生します。具体的には...
ERROR: '.'/2: Type error: `[]' expected, found `[8]' ("x" must hold one character)
Exception: (7) cbList([1, 2], _G296, []) ? creep
このエラーが発生している理由は完全にはわかりませんが、最後の行で発生しているようです。CubesはNewCubesです。どんな助けでも大歓迎です:)