このディレクトリの索引

#  
#  リストにn個の項を入力する。入力し終わったら一行に表示する。
#  
#  実行例
#  何個のデータを入力しますか : 5.
#  1個目 : 37.
#  2個目 : 15.
#  3個目 : abc.
#  4個目 : p(3).
#  5個目 : z.
#  37 15 abc p(3) z
#  

'リストにn個の項を入力する。入力し終わったら一行で表示する' :-
        リストにn個の項を入力する(_n個,_リスト),
        入力し終わったら一行で表示する(_リスト).

リストにn個の項を入力する(_n個,_リスト) :-
        n個の(_n個),
        n個のリスト(_n個,_リスト),
        リストに項を入力する(_リスト).

n個の(_n個) :-
        write('何個のデータを入力しますか : '),
        read(_n個).

n個のリスト(_n個,_リスト) :-
        length(_リスト,_n個).

リストに項を入力する(_リスト) :-
        findall(_項,(
                    append(L0,[_|_],_リスト),
                    length([_|L0],_n個目),
                    writef('%t個目 : ',[_n個目]),
                    read(_項)),
                _リスト).

入力し終わったら一行で表示する([_項]) :-
        writef('%t\n',[_項]),!.        
入力し終わったら一行で表示する([_項|R]) :-
        writef('%t ',[_項]),
        入力し終わったら一行で表示する(R).