このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 130代目 #432 # [1] 授業単元: C言語演習 # [2] 問題文(含コード&リンク): http://ime.nu/kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9948.txt # # 以下のプログラムを作成せよ # ファイル data.txt を探し、そこに人の名前(空欄は含まない)と生年月日 # を追記していくプログラムを作成せよ。一人のデータが入力されたら次の人の # データも連続して入力できるように工夫せよ。 # 形式は以下のようにする。 # taro 1985 06 23 # Jiro 1983 07 31 # 課題達成条件は # 半角の名前と生年月日(三つの数字)が各人に対して記録できる # 一人分のデータが一行で記録されている # 一回の実行で、複数のデータを連続して入力できる。毎回続けて入力するか # 尋ねるか、または、はじめに入力する人数を聞くか、もしくは別の方法でもよい。 # 実行を繰り返すたびに、生年月日の登録人数は増えていく(データは追記されていく) 'ファイル data.txt を探し、そこに人の名前(空欄は含まない)と生年月日 を追記していくプログラムを作成せよ。一人のデータが入力されたら次の人の データも連続して入力できるように工夫せよ。 形式は以下のようにする。 taro 1985 06 23 Jiro 1983 07 31 課題達成条件は 半角の名前と生年月日(三つの数字)が各人に対して記録できる 一人分のデータが一行で記録されている 一回の実行で、複数のデータを連続して入力できる。毎回続けて入力するか 尋ねるか、または、はじめに入力する人数を聞くか、もしくは別の方法でもよい。 実行を繰り返すたびに、生年月日の登録人数は増えていく(データは追記されていく)' :- 'ファイル data.txt を探し、そこに人の名前(空欄は含まない)と生年月日 を追記していく'. 'ファイル data.txt を探し、そこに人の名前(空欄は含まない)と生年月日 を追記していく' :- open('data.txt',append,_出力), 'そこに人の名前(空欄は含まない)と生年月日を追記していく'(_出力), close(_出力). 'そこに人の名前(空欄は含まない)と生年月日を追記していく'(_出力) :- '最初に何人追記するか質問し、その人数分の名前(半角)と生年月日(三つの数字)を区切り入力させて、それをファイルに追記する'(_出力). '最初に何人追記するか質問し、その人数分の名前(半角)と生年月日(三つの数字)を区切り入力させて、それをファイルに追記する'(_出力) :- '最初に何人追記するか質問し、'(_人数), 'その人数分の名前(半角)と生年月日(三つの数字)を区切り入力させて、それをファイルに追記する'(_出力,_人数). '最初に何人追記するか質問し、'(_人数) :- write('何組の名前と生年月日を入力しますか? : '), 行入力(_行_1), atom_number(_行_1,_人数). 行入力(_行) :- read_line_to_codes(current_input,_コードならび), atom_codes(_行,_コードならび). 'その人数分の名前(半角)と生年月日(三つの数字)を区切り入力させて、それをファイルに追記する'(_出力,_人数) :- forall( 'その人数分の入力事例を示して催促し、名前(半角)と生年月日(三つの数字)を空白で区切り入力させて、'(_人数,_行), それをファイルに追記する(_出力,_行)). 'その人数分の入力事例を示して催促し、名前(半角)と生年月日(三つの数字)を空白で区切り入力させて、'(_人数,_行) :- その人数分の(_人数), '入力事例を示して催促し、名前(半角)と生年月日(三つの数字)を空白で区切り入力させて、'(_行). '入力事例を示して催促し、名前(半角)と生年月日(三つの数字)を空白で区切り入力させて、'(_行) :- write('%t\n%t のように\n',['taro 1985 06 23','Jiro 1983 07 31']), write('[名前(半角)と生年月日(三つの数字)を空白で区切り入力してください: '), 行入力(_行). それをファイルに追記する(_出力,_行) :- write(_出力,_行), write(_出力,'\n').