求三角形面积(已知3点坐标)

题目描述

平面上有一个三角形,它的三个顶点坐标分别为(x1, y1), (x2, y2), (x3, y3),那么请问这个三角形的面积是多少。

输入格式

输入仅一行,包括6个双精度浮点数,分别对应x1, y1, x2, y2, x3, y3。

输出格式

输出也是一行,输出三角形的面积,精确到小数点后两位。

样例

样例输入

0 0 4 0 0 3

样例输出

6.00

数据范围与提示

两点间线段长度公式:【(x1-x2)的平方+(y1-y2)的平方之和再开根号】;
已经三角形三边长,求面积使用“海伦公式”,三角形三边分别是a,b,c,t=(a+b+c)/2;  面积s=根号下t*(t-a)(t-b)(t-c)

过分水!!!

过分水!!!

过分水!!!

c++AC代码

#include<cstdio>
#include<iostream>
#include<cmath>
using namespace std;
double X1,Y1,X2,Y2,X3,Y3,a,b,c,d;
int main(){
	cin>>X1>>Y1>>X2>>Y2>>X3>>Y3;
	a=sqrt((X1-X2)*(X1-X2)+(Y1-Y2)*(Y1-Y2));
	b=sqrt((X3-X2)*(X3-X2)+(Y3-Y2)*(Y3-Y2));
	c=sqrt((X1-X3)*(X1-X3)+(Y1-Y3)*(Y1-Y3 ));
	d=(a+b+c)/2;
	printf("%.2lf",sqrt(d*(d-a)*(d-b)*(d-c)));
	return 0;
} 
posted @ 2021-03-30 21:04  黄逸飞重庆八中  阅读(759)  评论(0编辑  收藏  举报