このディレクトリの索引

# 出典 :: C/C++言語の宿題片付けます 149代目 #490 # [1] 授業単元:ファイルにある数字をすべて読み込む # [2] 問題文(含コード&リンク): # log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。 # 記載されている実数を全て読み込み、数値の個数、平均値、分散値を求めて表示するプログラムを作成しなさい。 # 'log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。記載されている実数を全て読み込み、数値の個数、平均値、分散値を求めて表示する' :- 'log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。記載されている実数を全て読み込み、'(_実数ならび), '数値の個数、平均値、分散値を求めて表示する'(_実数ならび). 'log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。記載されている実数を全て読み込み、'(_実数ならび) :- 'log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。', '記載されている実数を全て読み込み、'(_実数ならび). 'log1.txtには、0個以上の実数が1行に1つずつ、改行を挟んで記載されている。' :- see('log1.txt'). '記載されている実数を全て読み込み、'(_実数ならび) :- findall(_実数,( repeat,(at_end_of_stream(current_input),seen,!,fail;実数入力(_実数))),_実数ならび). 実数入力(_実数) :- 行入力(_行), atom_number(_行,_実数). 行入力(_行) :- read_line_to_codes(current_input,_文字コードならび), atom_codes(_行,_文字コードならび). '数値の個数、平均値、分散値を求めて表示する'(_実数ならび) :- 数値の個数(_実数ならび,_個数), 平均値(_実数ならび,_平均値), 分散値(_実数ならび,_分散値), writef('個数 = %w, 平均値 = %w, 分散値 = %w\n',[_個数,_平均値,_分散値]). 平均値(L,M) :- length(L,N), 平均値(L,N,0.0e+00,M). 平均値([],N,S,M) :- M is S / N. 平均値([A|R],N,S,M) :- S1 is S + A, 平均値(R,N,S1,M). 分散値(L,V) :- length(L,N), 平均値(L,M), 分散値(L,N,M,0.0e+00,V). 分散値([],N,M,S,V) :- V is S / N. 分散値([A|R],N,M,S,V) :- S1 is (A - M) ^ 2, S2 is S + S1, 分散値(R,N,M,S2,V).