このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 132代目 #407 # [1] 授業単元: C言語 # [2] 問題文(含コード&リンク): # 課題1、文字列、と2つの整数(それぞれ n, m とする)を入力すると # n文字目から m文字 *に変えるプログラムを書け。 # # 実行例 #   文字を入力して下さい # Toshidaigaku # nを入力して下さい # 4 # mを入力して下さい # 2 # 出力は # Tos**daigaku # # 課題2、文字列を入力すると、全ての文字を次の文字コードの文字に # 変えて、結果を表示するプログラムを書け。 # # 実行例 # # 文字を入力して下さい # Toshidaigaku # 出力は # Uptijebjhblv # # '文字列と2つの整数(それぞれ n, m とする)を入力するとn文字目からm文字*に変える'(_文字列,_n,_m,_変換された文字列) :- 副文字列(_文字列,_前文字列,_置換される副文字列,_後文字列), 置換される副文字列を星文字列に置換して変換された文字列を得る(_n,_m,_前文字列,_置換される副文字列,_後文字列,_変換された文字列). 副文字列(_文字列,_前文字列,_副文字列,_後文字列) :- atom_concat(_前文字列,_残り文字列,_文字列), atom_concat(_副文字列,_後文字列,_残り文字列). 置換される副文字列を星文字列に置換して変換された文字列を得る(_n,_m,_前文字列,_置換される副文字列,_後文字列,_変換された文字列) :- 'nとmから前文字列、置換される副文字列が決まる'(_n,_m,_前文字列,_置換される副文字列), 星文字列(_m,_星文字列), '前文字列、星文字列、後文字列を結合して変換された文字列を得る'(_前文字列,_星文字列,_後文字列,_変換された文字列). 'nとmから前文字列、置換される副文字列が決まる'(_n,_m,_前文字列,_置換される副文字列) :- 前文字列の文字列長はn字目のnより1小さくなる(_n,_n_1), atom_length(_前文字列,_n_1), atom_length(_置換される副文字列,_m). 前文字列の文字列長はn字目のnより1小さくなる(_n,_n_1) :- succ(_n_1,_n). 星文字列(_m,_星文字列) :- findall(*,between(1,_m,_),_星ならび), atom_chars(_星文字列,_星ならび). '前文字列、星文字列、後文字列を結合して変換された文字列を得る'(_前文字列,_星文字列,_後文字列,_変換された文字列) :- atomic_list_concat([_前文字列,_星文字列,_後文字列],_変換された文字列).