このディレクトリの索引
http://toro.2ch.net/test/read.cgi/tech/1339338438/855
#  [1] 授業単元:C言語 
#  [2] 問題文: 
#  入力された文字列で2つ目のハイフン以降の文字列だけを表示せよ。 
#  <実行例> 
#  文字列を入力せよ:one-two-three-four 
#  three-four 
#   
#  

入力された文字列で2つ目のハイフン以降の文字列だけを表示せよ :-
        入力された文字列で(_文字列),
        '2つ目のハイフン以降の文字列だけを'(_文字列,_2つ目のハイフン以降の文字列),
        表示せよ(_2つ目のハイフン以降の文字列).

入力された文字列で(_文字列) :-
        get_line(_文字列).

'2つ目のハイフン以降の文字列だけ'(_文字列,_2つ目のハイフン以降の文字列) :-
        '2つ目のハイフン'(_文字列,_残り文字ならび),
        atom_chars(_2つ目のハイフン以降の文字列,_残り文字ならび),!.

'2つ目のハイフン'(_文字列,_残りならび) :-
        atom_chars(_文字列,_文字ならび),
        append(L1,['-'|_残り文字ならび],_文字ならび),
        member('-',L1),!.

以降の文字列だけ(_残り文字ならび,_2つ目のハイフン以降の文字列) :-
        atom_chars(_2つ目のハイフン以降の文字列,_残り文字ならび).

表示せよ(_2つ目のハイフン以降の文字列) :-
        writef('%t\n',[_2つ目のハイフン以降の文字列]).