このディレクトリの索引

# 出典 :: C/C++の宿題片付けます 157代目 #350 # [1] 授業単元:プログラミング # [2] 問題文(含コード&リンク): # 2x2の行列A,Bの差を求める関数void func2(int A[][], int B[][], int C[][])を定義して # その動作を確かめるプログラムkadai4-2.cを作りなさい。 # 演算結果はC[][]に代入されて返されるものとする。 # ただしAとBはキーボードから次で入力するものとする。 # scanf("%d %d %d %d %d %d %d %d", &a[0][0], &a[0][1], &a[1][0],&a[1][1], &b[0][0],&b[0][1],&b[1][0], &b[1][1]); # 答えは以下で出力されるものとする。 # printf("answer = %d %d %d %d\n", c[0][0], c[0][1], c[1][0], c[1][1]); # # '2x2の行列の差を求めて出力する'(_行列A,_行列B) :- '2x2の行列の差を求めて'(_行列A,_行列B,_行列Aと行列Bの差), 出力する(_行列Aと行列Bの差). '2x2の行列A,Bの差を求めて'(_行列A,_行列B,_行列Aと行列Bの差) :- '2x2の行列A,Bの要素'(_行列A,_行列B,A11,A12,A21,A22,B11,B12,B21,B22), ならびの減算([A11,A12,A21,A22],[B11,B12,B21,B22],[C11,C12,C21,C22]), '2x2の行列の要素'(_行列Aと行列Bの差,C11,C12,C21,C22). '2x2の行列A,Bの要素'(_行列A,_行列B,A11,A12,A21,A22,B11,B12,B21,B22) :- '2x2の行列の要素'(_行列A,A11,A12,A21,A22), '2x2の行列の要素'(_行列B,B11,B12,B21,B22). '2x2の行列の要素'([[E11,E12],[E21,E22]],E11,E12,E21,E22). ならびの減算([],[],[]). ならびの減算(L1,L2,L3) :- 二つのならびの対応する要素を減算して行く(L1,L2,L3). 二つのならびの対応する要素を減算して行く([A|R1],[B|R2],[C|R3]) :- C is A - B, ならびの減算(R1,R2,R3). 出力する([[C11,C12],[C21,C22]]) :- writef('answer = %w %w %w %w\n",[C11,C12,C21,C22]).