17:计算三角形面积

xiaoxiao2021-02-28  101

原题链接

总时间限制:  1000ms  内存限制:  65536kB 描述

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

输入 输入仅一行,包括6个单精度浮点数,分别对应x1, y1, x2, y2, x3, y3。 输出 输出也是一行,输出三角形的面积,精确到小数点后两位。 样例输入 0 0 4 0 0 3 样例输出 6.00 提示 海伦公式

源码

#include <iostream> #include <iomanip> #include <cmath> using namespace std; /* * 海伦公式:只要已知三角形的三条边长,就可以求三角形的面积.公式:若已知三角形的三条边长分别为a、b、c, * S=根号下p(p-a)(p-b)(p-c) (p为三角形周长的一半,即p=1/2(a+b+c)) */ 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; }

转载请注明原文地址: https://www.6miu.com/read-23459.html

最新回复(0)