このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 131代目 #451 # http://ime.nu/www.dotup.org/uploda/www.dotup.org315213.docx.html # 【質問テンプレ】 # [1] 授業単元:計算機実習応用 # [2] 問題文(含コード&リンク): # http://ime.nu/www.dotup.org/uploda/www.dotup.org315213.docx.html # # 問1 上のプログラムのfunction1()の定義を改造して,function1(int x, int y)がx*x+y*yの値をint型で返すようなプログラムに改造し,100*100+50*50の計算をさせて画面に結果を表示させよ(仮引数が2つになっている). # # 問2 このプログラムを改造し,2つの非負の実数の四則演算(和差積商)を求め画面表示させるプログラムにせよ.なお,配布した1030sample.exeのように動作するように作ること.また以下の点をよく考えること. # 1.aとbの値(ゼロより大きい実数)をキーボードから入力させること(scanfを2回使う) # 2.関数wasasekisho(double x, double y, double * pwa, double * psa, double * pseki, double * psho)を定義して中身を作ること # 4.main関数に帰ってきてから1030sample.exeのように表示されるものを作ること(printfをうまく使う). # # 問3 上記のプログラムを改造して,与えられたデータの平均値を計算する関数はそのまま利用し,main関数の中で分散値を計算して両者を画面表示させなさい(分散を計算する関数は定義しない).画面表示の形式としては, # データの平均は 4.460000 # データの分散は 7.623000 # 続行するには何かキーを押してください.. . 関数定義(function1(X,Y),_値) :- function1(X,Y,_値). 関数定義(wasasekisho(X,Y),_値) :- wasasekisho(X,Y,Pwa,Psa,Pseki,Psho), _値 = [Pwa,Psa,Pseki,Psho]. 関数定義(heikin(L),_値) :- 相加平均(L,_値). 関数定義(bunsan(L),_値) :- 分散(L,_値). function1(X,Y,Z) :- Z is X * X + Y * Y. wasasekisho(X,Y,Pwa,Psa,Pseki,Psho) :- Pwa is X + Y,Psa is X - Y,Pseki is X * Y,Psho is X / Y. 相加平均(L,Avg) :- findsum(U,member(U,L),Avg). 分散(L,_分散) :- length(L,Len), 相和平均(L,_相加平均), 分散(L,Len,_相加平均,0.0,_分散). 分散([],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). %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% findsum(_選択項,_項,_合計値) :- findall(_選択項,_項,_値ならび), 加算(_値ならび,_合計値),!. % 加算の解はすべての要素が整数の時整数、それ以外は浮動小数点数になります 加算(_値ならび,_合計値) :- 加算(_値ならび,0,_合計値). 加算([],_合計値,_合計値). 加算([A|R],S1,_合計値) :- S2 is A + S1, 加算(R,S2,_合計値).