このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1370255305/13
#  [1] 授業単元: 
#  [2] 問題文(含コード&リンク): 
#  1桁の整数10個をスペース区切りで入力すると,隣り合う2つの整数の和の1の位を表示していき 
#  1個になるまで繰り返すプログラムを作成せよ. 
#  【入力例】 
#  7 5 6 5 4 5 7 1 3 2 
#  【出力例】 
#  2 1 1 9 9 2 8 4 5 
#  3 2 0 8 1 0 2 9 
#  5 2 8 9 1 2 1 
#  7 0 7 0 3 3 
#  7 7 7 3 6 
#  4 4 0 9 
#  8 4 9 
#  2 3 
#  5 
#   
#  

'1桁の整数10個をスペース区切りで入力すると,隣り合う2つの整数の和の1の位を表示していき1個になるまで繰り返すプログラムを作成せよ.' :-
        '1桁の整数10個をスペース区切りで入力すると,'(L),
        '隣り合う2つの整数の和の1の位を表示していき1個になるまで繰り返す'(L),!.

'1桁の整数10個をスペース区切りで入力すると,'(L) :-
        write('1桁の整数10個をスペース区切りで入力しなさい : '),
        get_split_line([' '],L).

get_split_line(_区切りパターン,L) :-
        get_line(Line),
        split(Line,_区切りパターン,L).

'隣り合う2つの整数の和の1の位を表示していき1個になるまで繰り返す'([_]).
'隣り合う2つの整数の和の1の位を表示していき1個になるまで繰り返す'(L) :-
        '隣り合う2つの整数の和の1の位を表示していき'(L,L1),
        '隣り合う2つの整数の和の1の位を表示していき1個になるまで繰り返す'(L1).

'隣り合う2つの整数の和の1の位を表示していき'([N1,N2],[N3]) :-
        N3 is (N1 + N2) mod 10,
        writef('%t\n',[N3]).
'隣り合う2つの整数の和の1の位を表示していき'([N1,N2|R1],[N3|R2]) :-
        N3 is (N1 + N2) mod 10,
        writef('%t ',[N3]),
        '隣り合う2つの整数の和の1の位を表示していき'([N2|R1],R2).