このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1274827528/918
#  [1] 授業単元:Cプログラミング演習 
#  [2] 問題文(含コード&リンク): 
#  問題1:文字列"Computer1Programing2Communication3Electro4"を、"test.txt"に書き込むプログラムを作成せよ。 
#  問題2:ファイル"test.txt"から文字列も読み込み、並びを逆にしてファイル"sample.txt"に出力するプログラムを作成せよ。("test.txt"は問題1で作成したものを使用すること。) 
#  問題3:ファイル"sample.txt"から大文字だけを画面に表示させるプログラムを作成せよ。("sample.txt"は問題2で作成したものを使用すること。) 
#  

'文字列"Computer1Programing2Communication3Electro4"を、"test.txt"に書き込む' :-
        open('test.txt',write,Output),
        write(Output,'Computer1Programing2Communication3Electro4'),
        close(Output).

'ファイル"test.txt"から文字列も読み込み、並びを逆にしてファイル"sample.txt"に出力する' :-
        get_lines('test.txt',Lines),
        open('sample.txt',write,Output),
        append(_,[Line|R],Lines),
        並びを逆に(Line,_並びを逆にしたLine),
        write_formatted(Output,_並びを逆にしたLine),
        R = [],
        close(Output).

並びを逆に(Line,_並びを逆にしたLine) :-
        atom_chars(Line,Chars),
        reverse(Chars,Rchars),
        atom_chars(_並びを逆にしたLine,Rchars).

'ファイル"sample.txt"から大文字だけを画面に表示させる' :-
        get_chars('sample.txt',Chars),
        append(_,[Char|R],Chars),
        大文字だけを画面に表示させる(Char),
        R = [],!.

大文字だけを画面に表示させる(Char) :- Char @>= 'A',Char @=< 'Z',
        write(Char).
大文字だけを画面に表示させる(Char) :- \+((Char @>= 'A',Char @=< 'Z')).