C/C++の宿題を片付けます 59代目
■ このスレッドは過去ログ倉庫に格納されています
0548デフォルトの名無しさん
2006/02/01(水) 01:10:45距離でやるならこんなとこか。
double distance2(double p1[], double p2[]){return (p1[0]-p2[0])*(p1[0]-p2[0])+(p1[1]-p2[1])*(p1[1]-p2[1]);}
int congruence(struct triangle *a, struct triangle *b){
double da[3] = { distance2(a->p1,a->p2),distance2(a->p2,a->p3),distance2(a->p3,a->p1)};
double db[3] = { distance2(b->p1,b->p2),distance2(b->p2,b->p3),distance2(b->p3,b->p1)};
int i;
for(i=0;i<3;++i) if(da[0]==db[i%3]&&da[1]==db[(i+1)%3]&&da[2]==db[(i+2)%3]) return 1;
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています