このディレクトリの索引

# 出典::C/C++の宿題片付けます 129代目 #450 # [1] 授業単元:プログラミング演習 # [2] 問題文(含コード&リンク): # 下に示す2 行3 列の行列a, b の差を求めて表示するプログラムを作成せよ. # # a = # ( # 6 3 4 # 5 1 2 # ) # b = # ( # 1 2 3 # 4 5 6 # ) a([[6,3,4],[5,1,2]]). b([[1,2,3],[4,5,6]]). '2 行3 列の行列a, b の差を求めて表示するプログラムを作成せよ.' :- '2 行3 列の行列a, b の'(_a,_b), '2 行3 列の行列の差を求めて表示する'(_a,_b). '2 行3 列の行列a, b の'(_a,_b) :- a(_a), b(_b). '2 行3 列の行列の差を求めて表示する'([[_a11,_a12,_a13],[_a21,_a22,_a23]],[[_b11,_b12,_b13],[_b21,_b22,_b23]]) :- '2 行3 列の行列の差を求めて'([[_a11,_a12,_a13],[_a21,_a22,_a23]],[[_b11,_b12,_b13],[_b21,_b22,_b23]],[[_c11,_c12,_c13],[_c21,_c22,_c23]]), 表示する([[_c11,_c12,_c13],[_c21,_c22,_c23]]). '2 行3 列の行列の差を求めて'([[_a11,_a12,_a13],[_a21,_a22,_a23]],[[_b11,_b12,_b13],[_b21,_b22,_b23]],[[_c11,_c12,_c13],[_c21,_c22,_c23]]) :- 一行目の差を取る(_a11,_a12,_a13,_b11,_b12,_b13,_c11,_c12,_c13), 二行目の差を取る(_a21,_a22,_a23,_b21,_b22,_b23,_c21,_c22,_c23). 一行目の差を取る(_a11,_a12,_a13,_b11,_b12,_b13,_c11,_c12,_c13) :- _c11 is _a11 - _b11, _c12 is _a12 - _b12, _c13 is _a13 - _b13. 二行目の差を取る(_a21,_a22,_a23,_b21,_b22,_b23,_c21,_c22,_c23) :- _c21 is _a21 - _b21, _c22 is _a22 - _b22, _c23 is _a23 - _b23. 表示する(_行列) :- writef('%w\n',[_行列]).