nyoj 67 三角形面積 【幾何】
阿新 • • 發佈:2019-01-24
三角形面積
時間限制:3000 ms | 記憶體限制:65535 KB 難度:2- 描述
- 給你三個點,表示一個三角形的三個頂點,現你的任務是求出該三角形的面積
- 輸入
- 每行是一組測試資料,有6個整數x1,y1,x2,y2,x3,y3分別表示三個點的橫縱座標。(座標值都在0到10000之間)
輸入0 0 0 0 0 0表示輸入結束
測試資料不超過10000組 - 輸出
- 輸出這三個點所代表的三角形的面積,結果精確到小數點後1位(即使是整數也要輸出一位小數位)
- 樣例輸入
-
0 0 1 1 1 3 0 1 1 0 0 0 0 0 0 0 0 0
- 樣例輸出
-
1.0 0.5
分析:
知道座標值求三角形面積這道題就好做了。
程式碼:
#include<cstdio> #include<cstring> #include<algorithm> #include<queue> #include<cmath> using namespace std; int main() { double x1,x2,x3; double y1,y2,y3; while(scanf("%lf%lf%lf%lf%lf%lf",&x1,&y1,&x2,&y2,&x3,&y3)!=EOF) { if(!x1&&!x2&&!x3&&!y1&&!y2&&!y3) break; double s; s=fabs((x1*y2+x2*y3+x3*y1-x1*y3-x2*y1-x3*y2)/2.0); printf("%.1lf\n",s); } return 0; }