C/C++の宿題片付けます 137代目at TECH
C/C++の宿題片付けます 137代目 - 暇つぶし2ch227:デフォルトの名無しさん
10/06/26 07:07:19
double area(Triangle t) {
return fabs((t.p2.x - t.p1.x) * (t.p3.y - t.p1.x) - (t.p2.y - t.p1.x) * (t.p3.x - t.p1.x));
}

Triangle linear(Triangle t, double a[2][2]) {
Triangle ret;
ret.p1.x = a[0][0] * t.p1.x + a[0][1] * t.p1.y;
ret.p1.y = a[1][0] * t.p1.x + a[1][1] * t.p1.y;
ret.p2.x = a[0][0] * t.p2.x + a[0][1] * t.p2.y;
ret.p2.y = a[1][0] * t.p2.x + a[1][1] * t.p2.y;
ret.p3.x = a[0][0] * t.p3.x + a[0][1] * t.p3.y;
ret.p3.y = a[1][0] * t.p3.x + a[1][1] * t.p3.y;
return ret;
}

int isCongruence(Triangle t1, Triangle t2) {
double l1[3], l2[3];
int i, j;
l1[0] = (t1.p1.x - t1.p2.x) * (t1.p1.x - t1.p2.x) - (t1.p1.y - t1.p2.y) * (t1.p1.y - t1.p2.y);
l1[1] = (t1.p2.x - t1.p3.x) * (t1.p2.x - t1.p3.x) - (t1.p2.y - t1.p3.y) * (t1.p2.y - t1.p3.y);
l1[2] = (t1.p3.x - t1.p1.x) * (t1.p3.x - t1.p1.x) - (t1.p3.y - t1.p1.y) * (t1.p3.y - t1.p1.y);
l2[0] = (t2.p1.x - t2.p2.x) * (t2.p1.x - t2.p2.x) - (t2.p1.y - t2.p2.y) * (t2.p1.y - t2.p2.y);
l2[1] = (t2.p2.x - t2.p3.x) * (t2.p2.x - t2.p3.x) - (t2.p2.y - t2.p3.y) * (t2.p2.y - t2.p3.y);
l2[2] = (t2.p3.x - t2.p1.x) * (t2.p3.x - t2.p1.x) - (t2.p3.y - t2.p1.y) * (t2.p3.y - t2.p1.y);
for(i = 0; i < 3; i++) {
for(j = 0; j < 3; j++) if(l1[i] == l2[j]) { l2[j] = 0; break;}
if(j == 3) return 0;}
return 1;
}


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch