1. 程式人生 > 其它 >1158: 三角形面積

1158: 三角形面積

技術標籤:c語言

1158: 三角形面積
題目描述
給你三個點,表示一個三角形的三個頂點,現你的任務是求出該三角形的面積.

輸入
每行是一組測試資料,有6個整數x1,y1,x2,y2,x3,y3分別表示三個點的橫縱座標。(座標值都在0到10000之間)
輸入0 0 0 0 0 0表示輸入結束
測試資料不超過10000組

輸出
輸出這三個點所代表的三角形的面積,結果精確到小數點後1位(即使是整數也要輸出一位小數位)
在這裡插入圖片描述

#include<stdio.h>
#include<math.h>
int main()
{
    float x1,y1,x2,y2,x3,y3;
    while(~scanf
("%f %f %f %f %f %f", &x1,&y1,&x2,&y2,&x3,&y3)) if(x1==0&&x2==0&&x3==0&&y1==0&&y2==0&&y3==0) break; else{ double a,b,c,p,s; a=sqrt(pow(y2-y1,2)+pow(x2-x1,2));//求出三條邊的長度 b=sqrt(pow(y3-y1,2)+pow(x3-x1,2)); c=
sqrt(pow(y2-y3,2)+pow(x2-x3,2)); p=(a+b+c)/2;//利用海倫公式求三角形面積 s=sqrt(p*(p-a)*(p-b)*(p-c)); printf("%.1lf\n", s); } return 0; }