【发布时间】:2012-10-26 04:59:27
【问题描述】:
我正在尝试在 prolog 中执行一个功能以在列表列表中添加项目。我想要做的是在第一个列表的末尾添加 1 项,在第二个列表的末尾添加 2 项,等等。
我写这个是为了开始:
changerTableau(N,[Ligne|Reste],TableauVide,NouveauTableau):-
repeter(N,'.',Point),
append(Ligne,Point,NouvelleLigne),
append(TableauVide,NouvelleLigne,NouveauTableau),
writeln(N),
N2 is N+1,
writeln(NouveauTableau),
changerTableau(N2,Reste,NouveauTableau,Output).
repeter(0,_,[]):-!.
repeter(N,Item,[Item|Reste]):-
N2 is N - 1,
repeter(N2,Item, Reste).
所以我想要程序做的是,如果我从那个开始:
changerTableau(1,[['x','w'],['a','b'],['l','o','l']],[ ],Resultat).
我想输出:
Resultat = [['x','w','.'],['a','b','.','.'],['l','o','l','.','.','.']]
【问题讨论】: