我想将数字表示为数字列表。我做了大部分的实现,但我不知道如何解析整数后停止递归调用。我知道这个解决方案不是最好的,但我没有其他想法。
这是我的实施,如果有人有一些提示&技巧,请告诉我。
trans(NR,Q,L):-
NR > 0,
Q is NR mod 10,
NR1 is NR div 10,
Q1 is NR1 mod 10,
trans(NR1,Q1,[Q|L]).
例如:
?- trans(345,5,L).
应该返回L=[3,4,5]