このディレクトリの索引
http://pc12.2ch.net/test/read.cgi/tech/1244449887/159
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9419.txt

'課題1-4'(File,X) :-
    open(File,read,Input),
    get_char(Input,C),
    '課題1-4'(Input,C,[],Y),
    close(Input),
    sort(Y,X).

'課題1-4'(_,end_of_file,X,X) :- !.
'課題1-4'(Input,_受取文字,受取リスト,X) :-
    _受取文字 @>= ' ',
    _受取文字 @=< z,
    to_upper(_受取文字,_大文字化した文字),
    鍵と対の値に1を加える(_大文字化した文字,_受取リスト,_更新されたリスト),
    get_char(Input,_次の文字),
    '課題1-4'(Input,_次の文字,_更新されたリスト,X).

鍵と対の値に1を加える(Key,L,X) :-
    append(L1,[[Key,V]|L2],L),
    V2 is V + 1,
    append(L1,[[Key,V2]|L2],X),!.
鍵と対の値に1を加える(Key,L,[[Key,1]|L]).