本帖最後由 animejp 於 2014-3-23 00:04 編輯
作業4.10
觀念: 因可以平移線段,只要證明三條線斜率皆不同,則必能形成三角形。
假設: 1.輸入坐標為依序為(a,b) (c,d) (e,f) (g,h) (i,j) (k,l) 2.線段的斜率為y值相減 / x值相減 3.線段一斜率為 y1 / x1;線段二斜率為 y2 / x2;線段三斜率為 y3 / x3 3.交叉相乘法 #include <stdio.h> main() { int a, b, c, d, e, f, g, h, i, j, k, l, x1, y1, x2, y2, x3, y3, answer; scanf("%d", &a); scanf("%d", &b); scanf("%d", &c); scanf("%d", &d); scanf("%d", &e); scanf("%d", &f); scanf("%d", &g); scanf("%d", &h); scanf("%d", &i); scanf("%d", &j); scanf("%d", &k); scanf("%d", &l); x1 = c - a; y1 = d - b; x2 = g - e; y2 = h - f; x3 = k - i; y3 = l - j; answer = (x1 * y2 != x2 * y1 && x2 * y3 != x3 * y2 && x1 * y3 != x3 * y1); printf("%d\n", answer); } |
|