このディレクトリの索引

パスカルの三角形ならび(_n,_パスカルの三角形ならび) :-
        findall(L,(
                    パスカルの三角形(_n,L)),
                _パスカルの三角形ならび).

パスカルの三角形(_n,_パスカルの三角形) :-
        length(Ln,_n),
        パスカルの三角形(Ln,[1],_パスカルの三角形).

パスカルの三角形(Ln,L1,_) :-
        append(Ln,[_|_],L1),!,
        fail.
パスカルの三角形(Ln,_パスカルの三角形,_パスカルの三角形).
パスカルの三角形(Ln,L1,_パスカルの三角形) :-
        パスカルの三角形の次の行(L1,L2),
        パスカルの三角形(Ln,L2,_パスカルの三角形).

パスカルの三角形の次の行(L1,L2) :-
        findall(N,(
                    append(_,[A,B|_],L1),
                    N is A + B),
                L3),
        append([1|L3],[1],L2).