【蓝桥杯】2018决赛 三角形面积 (海伦公式求三角形面积)

题目描述

已知三角形三个顶点在直角坐标系下的坐标分别为:

(2.3, 2.5)
(6.4, 3.1)
(5.1, 7.2)

求该三角形的面积。
输出
要求精确到小数后3位,如不足3位,需要补零。


海伦公式:

在这里插入图片描述


代码:

#include <iostream>
using namespace std;

double len(double x1,double y1,double x2,double y2){
    
     //两点距离
	return sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
}

int main() 
{
    
    
	double a,b,c,p,s;
	a = len(2.3,2.5,6.4,3.1); //三条边长 a b c
	b = len(2.3,2.5,5.1,7.2); 
	c = len(6.4,3.1,5.1,7.2);
	p = (a+b+c)/2; //半周长
	s = sqrt(p*(p-a)*(p-b)*(p-c)); //面积公式
	printf("%.3f",s); //保留三位
	return 0;
}

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45260385/article/details/109320096