elem([],0).
elem([H|T],R):-atomic(H),elem(T,R1),R1 is R+1.
elem([H|T],R):-elem(H,R1),elem(T,R2),R is R1+R2.
這是我的代碼,在我搜索了我在這個網站上的問題的答案後,我沒有找到一個好的。錯誤是:?- elem([1,[2],3,4],R)
。在prolog中計算深層列表中的原子元素
ERROR: is/2: Arguments are not sufficiently instantiated.
但應R = 3。
你嘗試跟蹤執行?在Prolog提示符處輸入'trace.'。 –