このディレクトリの索引

http://pc12.2ch.net/test/read.cgi/tech/1258158172/368
# [1] 授業単元: プログラミング実習
# [2] 問題文(含コード&リンク):
# http://ime.nu/kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10180.txt
#
# 〜課題4〜
# 文字型配列  str='ABCDEFG'が初期設定されている。このstrのデータを英大文字から、英小文字に変換しなさい。
#


str('ABCDEFG').
%%%%%%% 普通は以下の定義で済ます%%%%%%%%%%%%
英大文字から、英小文字に変換 :-
    str(Str1),
    to_lower(Str1,Str2),
    write_formatted('%t',[Str2]).

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
英大文字から、英小文字に変換 :-
    str(Str1),
    atom_codes(Str1,Codes1),
    findall(C,(member(A,Codes),C is A - 32),Codes2),
    atom_codes(Str2,Codes2),
    write_formatted('%t',[Str2]).

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
英大文字から、英小文字に変換 :-
    str(Str1),
    atom_codes(Str1,Codes1),
    英大文字から、英小文字に変換(Codes1,Codes2),
    atom_codes(Str2,Codes2),
    write_formatted('%t',[Str2]).

英大文字から、英小文字に変換([],[]).
英大文字から、英小文字に変換([C1|R1],[C2|R2]) :- C2 is C1-32,英大文字から、英小文字に変換(R1,R2)