0
问题只是...为什么这不起作用?序言,递归函数,并通过函数的参数返回值
replace([l|[r|[r|[l|R]]]], Result) :- append([f,f],R,Result).
replace([HEAD|TAIL], Result) :- replace(TAIL, Y), append(HEAD,Y,Result).
?- replace([l,r,r,l,r,r],X).
回报
X = [f, f, r, r] .
但
?- replace([r,l,r,r,l,r,r],X).
给
false
为什么不是X = [r, f, f, r, r] .
?
请大家帮忙。
PS。我仍然在学习英语,但有时我犯了愚蠢的错误。我尽我最大努力,用英语写问题和答案,但如果您在出现任何错误时编辑我的帖子,我将非常高兴。我保证,你的努力不会被浪费。
哇......谢谢..现在它是如此的明显:) – noisy 2010-11-18 03:04:01