1 条题解

  • 0
    @ 2024-4-1 20:47:41
    /*
    这是一道在坐标系上的海伦公式计算,首先需要会做计算两点之间距离这题,
    学会运用勾股定理解决两坐标点间距离计算的问题,再利用海伦秦九韶公式
    计算这道题目。
    */
    #include<bits/stdc++.h>
    using namespace std;
    double x1, y11, x2, y2, x3, y3, a, b, c, p;
    inline double dis(double x1, double y11, double x2, double y2) {
    	return sqrt((x1 - x2) * (x1 - x2) + (y11 - y2) * (y11 - y2));
    } //给定坐标计算两点之间距离
    int main(void) {
    	scanf("%lf %lf %lf %lf %lf %lf", &x1, &y11, &x2, &y2, &x3, &y3);
    	a = dis(x1, y11, x2, y2);
    	b = dis(x2, y2, x3, y3);
    	c = dis(x3, y3, x1, y11);
    //a, b, c为三边边长
    	p = (a + b + c) / 2; //p为周长一半
    	printf("%.2lf", sqrt(p * (p - a) * (p - b) * (p - c))); //直接用简单的海伦公式即可
    	return 0;
    }
    

    信息

    ID
    35
    时间
    1000ms
    内存
    128MiB
    难度
    2
    标签
    递交数
    40
    已通过
    25
    上传者