このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 128代目 #732 # [1] 授業単元: プログラミングC # [2] 問題文(含コード&リンク): # キーボードから半角英数で文字列を入力し、英字については大文字を小文字に、小文字 を大文字にするプログラムを作成せよ。 # # 実行例 文字列入力 :AbCdEfG123 #     変換文字列 :aBcDeFg123 'キーボードから半角英数で文字列を入力し、英字については大文字を小文字に、小文字を大文字にして表示する' :- 'キーボードから半角英数で文字列を入力し、'(_文字列), '英字については大文字を小文字に、小文字を大文字にして表示する'(_文字列). 'キーボードから半角英数で文字列を入力し、'(_文字列) :- 'キーボードから半角英数のみの文字ならびを得る'(_半角英数からのみなる文字ならび), atom_char(_文字列,_半角英数からのみなる文字ならび). 'キーボードから半角英数のみの文字ならびを得る'(_半角英数からのみなる文字ならび) :- write('文字列入力 :'), findall(_文字,(半角英数文字を連続して読み込む(_文字),(_文字='\n',!,fail; true)),_半角英数からのみなる文字ならび). 半角英数文字を連続して読み込む(_文字) :- repeat, 半角英数文字を読み込む(_文字). 半角英数文字を読み込む(_文字) :- get_char(_文字), 半角英数(_文字). 半角英数(_数字) :- 数字(_数字). 半角英数(_英大文字) :- 英大文字小文字(_英大文字,_). 半角英数(_英大小文字) :- 英大文字小文字(_,_英小文字). 数字(_数字) :- _数字 @>= '0', _数字 @=< '9'. 英大文字小文字('A',a). 英大文字小文字('B',b). 英大文字小文字('C',c). 英大文字小文字('D',d). 英大文字小文字('E',e). 英大文字小文字('F',f). 英大文字小文字('G',g). 英大文字小文字('H',h). 英大文字小文字('I',i). 英大文字小文字('J',j). 英大文字小文字('K',k). 英大文字小文字('L',l). 英大文字小文字('M',m). 英大文字小文字('N',n). 英大文字小文字('O',o). 英大文字小文字('P',p). 英大文字小文字('Q',q). 英大文字小文字('R',r). 英大文字小文字('S',s). 英大文字小文字('T',t). 英大文字小文字('U',u). 英大文字小文字('V',v). 英大文字小文字('W',w). 英大文字小文字('X',x). 英大文字小文字('Y',y). 英大文字小文字('Z',z). '英字については大文字を小文字に、小文字を大文字にして表示する'(_文字列) :- '英字については大文字を小文字に、小文字を大文字にして'(_文字列,_変換された文字列), 表示する(_変換された文字列). '英字については大文字を小文字に、小文字を大文字にして'(_文字列,_変換された文字列) :- findall(_変換された文字,'文字列から一文字取り出し、英字については大文字を小文字に、小文字を大文字にする'(_文字列,_変換された文字),_変換された文字ならび), atom_chars(_変換された文字列,_変換された文字ならび). '文字列から一文字取り出し、英字については大文字を小文字に、小文字を大文字にする'(_文字列,_変換された文字) :- '文字列から一文字取り出し、'(_文字列,_文字), '文字が英大文字ならば英小文字、英小文字ならば英大文字に変換し、数字は変換しない。'(_文字,_変換された文字). '文字列から一文字取り出し、'(_文字列,_文字) :- sub_atom(_文字列,_,1,_,_文字). '文字が英大文字ならば英小文字、英小文字ならば英大文字に変換し、数字は変換しない。'(_文字,_変換された文字) :- '文字が英大文字ならば英小文字、'(_文字,_変換された文字). '文字が英大文字ならば英小文字、英小文字ならば英大文字に変換し、数字は変換しない。'(_文字,_変換された文字) :- '英小文字ならば英大文字に'(_文字,_変換された文字). '文字が英大文字ならば英小文字、英小文字ならば英大文字に変換し、数字は変換しない。'(_文字,_変換された文字) :- '数字は変換しない。'(_文字,_変換された文字). '文字が英大文字ならば英小文字、'(_英大文字,_英小文字) :- 英大文字小文字(_英大文字,_英小文字). '英小文字ならば英大文字に'(_英小文字,_英大文字) :- 英大文字小文字(_英大文字,_英小文字). '数字は変換しない。'(_数字,_数字) :- 数字(_数字). 表示する(_変換された文字列) :- writef('変換文字列 :%w\n',[_変換された文字列]).