このディレクトリの索引

# 出典 :: Rubyの宿題教えてください。2限目 #745 # # [1] 授業単元:プログラミング初歩 # # [2] 問題文(含コード&リンク): # # ・文字列を,a ならば z,b ならば y,c ならば x のように,小文字も大文字もアルファベットの逆順の出現文字に置き換えるプログラムを作りなさい. # ・文字列が与えられたとき,アルファベットを大文字,小文字を区別せずに出現頻度順に小文字で並べた文字列を返すプログラムを作りなさい. # アルファベット文字列(小文字,abcdefghijklmnopqrstuvwxyz). アルファベット文字列(大文字,'ABCDEFGHIJKLMNOPQRSTUVWXYZ'). '文字列を,a ならば z,b ならば y,c ならば x のように,小文字も大文字もアルファベットの逆順の出現文字に置き換える'(_文字列,_アルファベットの逆順に変換された文字列) :- findall(_逆順の出現文字,逆順の出現文字(_文字列,_逆順の出現文字),_逆順の文字ならび), atom_chars(_アルファベットの逆順に変換された文字列,_逆順の文字ならび). 逆順の出現文字(_文字列,_逆順の出現文字) :- アルファベット文字列を得る(_アルファベット小文字文字列,_アルファベット大文字文字列), 文字列から一文字ずつ逆順の出現文字を取り出す(_文字列,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字). アルファベット文字列を得る(_アルファベット小文字文字列,_アルファベット大文字文字列) :- アルファベット文字列(小文字,_アルファベット小文字文字列), アルファベット文字列(大文字,_アルファベット大文字文字列). 文字列から一文字ずつ逆順の出現文字を取り出す(_文字列,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字) :- 文字列から一文字ずつ(_文字列,_文字), 逆順の出現文字を取り出す(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字). 文字列から一文字ずつ(_文字列,_文字) :- sub_atom(_文字列,_,1,_,_文字). 逆順の出現文字を取り出す(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字) :- 文字が小文字の場合はアルファベット小文字文字列から逆順の出現文字を得る(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字),!. 逆順の出現文字を取り出す(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字) :- 文字が大文字の場合はアルファベット大文字文字列から逆順の出現文字を得る(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字). 文字が小文字の場合はアルファベット小文字文字列から逆順の出現文字を得る(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字) :- 逆順の文字をアルファベット文字列の後方から得る(_文字,_アルファベット小文字文字列,_逆順の出現文字). 文字が大文字の場合はアルファベット大文字文字列から逆順の出現文字を得る(_文字,_アルファベット小文字文字列,_アルファベット大文字文字列,_逆順の出現文字) :- 逆順の文字をアルファベット文字列の後方から得る(_文字,_アルファベット大文字文字列,_逆順の出現文字). 逆順の文字をアルファベット文字列の後方から得る(_文字,_アルファベット文字列,_逆順の出現文字) :- sub_atom(_アルファベット文字列,S,1,_,_文字), sub_atom(_アルファベット文字列,_,1,S,_逆順の出現文字).