このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1335517816/405
#  [1] 授業単元:プログラミング 
#  [2] 問題文(含コード&リンク): 
#  malloc と realloc を用いて、繰り返し入力された文字列を連結していく。 
#  文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示しなさい。  
#  表示した後、free をする。 
#  

'繰り返し入力された文字列を連結していく。文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する' :-
        入力された文字列(_入力された文字列),
        '繰り返し入力された文字列を連結していく。文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(_入力された文字列,'').

'繰り返し入力された文字列を連結していく。文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(_入力された文字列,_これまで連結された文字列) :-
        '文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(_入力された文字列,_これまで入力された文字列),!.
'繰り返し入力された文字列を連結していく。文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(_入力された文字列,_これまで連結された文字列) :-
        atom_concat(_入力された文字列,_これまで連結された文字列,_連結された文字列),
        入力された文字列(_新たに入力された文字列),
        '繰り返し入力された文字列を連結していく。文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(_新たに入力された文字列,_連結された文字列).

'文字列 quit が入力されたとき繰り返しを終了してできあがった文字列を表示する'(quit,_これまで入力された文字列) :-
        writef('%t\n',[_これまで入力された文字列]).

入力された文字列(_入力された文字列) :-
        write('文字列 ? '),
        get_line(_入力された文字列).