问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

计算三角形面积的编程实现

创作时间:
作者:
@小白创作中心

计算三角形面积的编程实现

引用
CSDN
1.
https://blog.csdn.net/mayuan2017/article/details/77739945

原题链接
总时间限制:
1000ms
内存限制:
65536kB

题目描述

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

输入格式

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

输出格式

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

样例输入

0 0 4 0 0 3

样例输出

6.00

提示

海伦公式:只要已知三角形的三条边长,就可以求三角形的面积。公式为:若已知三角形的三条边长分别为a、b、c,
S=根号下p(p-a)(p-b)(p-c) (p为三角形周长的一半, 即p=1/2(a+b+c))

C++源码实现

#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;

int main()
{
    float x1,x2,x3,y1,y2,y3,a,b,c,p,s;
    cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
    a = sqrt(pow((x1-x2),2)+pow((y1-y2),2));
    b = sqrt(pow((x2-x3),2)+pow((y2-y3),2));
    c = sqrt(pow((x3-x1),2)+pow((y3-y1),2));
    p = (a+b+c)/2;
    s = sqrt(p*(p-a)*(p-b)*(p-c));
    cout << fixed << setprecision(2) << s << endl;
    return 0;
}  

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号