このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1255709298/705 
#  [1] 授業単元:データ構造とアルゴリズム設計 
#  [2] 問題文(含コード&リンク): 
#  入力された小文字のアルファベットを,リストを用いて順次格納する. 
#  ’‐’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示するプログラムを作成 
#  せよ. 
#  ただし,リストに格納する際,リストの最後に追加するようにせよ. 
#  例(a, b, c, - と順に入力したときa,b,cと出力される) 
す
'入力された小文字のアルファベットを,リストを用いて順次格納する.'’‐'’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示' :- 
    新しいキューを作る(_キュー), 
    rawmode, 
    get_char(_文字), 
    '入力された小文字のアルファベットを,リストを用いて順次格納する.'’‐'’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示'(_文字,_キュー), 
    norawmode. 

'入力された小文字のアルファベットを,リストを用いて順次格納する.'’‐'’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示'('-',_キュー,_キュー) :- !. 
'入力された小文字のアルファベットを,リストを用いて順次格納する.'’‐'’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示'(_文字,_キュー,_キュー) :- 
    キューに要素を追加する(_文字,_キュー,_キュー_2), 
    get_char(_文字_2),
    '入力された小文字のアルファベットを,リストを用いて順次格納する.'’‐'’が入力された時に文字の入力を終了し,それまでに格納された全ての文字を表示'(_文字_2,_キュー_2,_キュー_4), 
    キューから要素を取り出す(_要素,_キュー_3,_キュー_4), 
    put_char(_要素).  

新しいキューを作る(X-X). 
キューは空である(X-Y) :- X == Y. 
キューに要素を追加する(_要素,X-[_要素|Y],X-Y). 
キューから要素を取り出す(_要素,[_要素|X]-Y,X-Y).