SWI-Prolog,向后写

时间:2016-06-17 10:49:13

标签: prolog

这是一个谓词,应该从列表中向后写,但是因为' tab(-2)'没有工作我想知道是否有其他谓词,或者使用&tab; / 1'为了向后移动 (在这种情况下,使用' reverse / 2'不是一个选项。)

我对这一切都很陌生,所以我希望我做的一切都很对,任何形式的帮助都会受到赞赏。

snakeprint([X|Xs],Counter1,Counter2,Y,2):-
   tab((Y*3)-3),                               
   write(X),                                 
   tab(-2),                                  
   C1 is Counter1-1,
   snakeshift([X|Xs],V),
   snakeprint(V,C1,Counter2,Y,2).

1 个答案:

答案 0 :(得分:0)

snakeprint([H|T]) :-
    snakeprint(T),
    write(H).

snakeprint([]).


Input: ["M", "a", "r", "y", " ", "h", "a", "d"]
Output: dah yraM