このディレクトリの索引
#  お題:値が整数のn個の数列がある。隣同士の項の和の数列をつくる。 
#  この操作を繰り返して項が1個になったらその値を返す。 
#  例 
#  31,41,59,2 -> 333 
#  31,41,59,2
#  →(31+41),(41+59),(59+2) 
#  →(31+41+41+59),(41+59+59+2) 
#  →(31+41+41+59+41+59+59+2) 
#  三角数と初めの数列の長さに関係してる。数学問題だな 


'値が整数のn個の数列がある。隣同士の項の和の数列をつくる。この操作を繰り返して項が1個になったらその値を返す。'([_1個になったらその値],_1個になったらその値) :- !.
'値が整数のn個の数列がある。隣同士の項の和の数列をつくる。この操作を繰り返して項が1個になったらその値を返す。'(_値が整数の数列,_1個になったらその値) :-
        \+(_値が整数の数列 = []),
        findall(_隣同士の項の和,(
                    append(_,[_項_1,_項_2|_],_値が整数の数列),
                    _隣同士の項の和 is _項_1 + _項_2),
                _隣同士の項の和の数列),
        '値が整数のn個の数列がある。隣同士の項の和の数列をつくる。この操作を繰り返して項が1個になったらその値を返す。'(_隣同士の項の和の数列,_1個になったらその値).