2016-06-17 2 views
0

이것은 목록에서 거꾸로 작성해야하는 술어이지만 'tab (-2)'이 작동하지 않기 때문에 다른 술어 또는 다른 방법이 있는지 궁금합니다. 뒤로 이동하려면 '탭/1'을 사용하십시오. ('reverse/2'는이 경우 옵션이 아닙니다.)SWI-Prolog, 역순으로 작성

메신저 내 의견이 상당히 새롭기 때문에 모든 것을 올바르게했으면 좋겠어. 모든 종류의 도움을 주시면 감사하겠습니다.

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). 

답변

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

snakeprint([]). 


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