文章

1

粉丝

11

获赞

0

访问

270

头像
求三角形面积 题解:
P5111
发布于2024年7月26日 18:17
阅读数 270

 

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

long long f[5][5];  // 用于存储三角形顶点坐标的数组
double e[5];        // 用于存储三角形边长的数组

int main() {
    // 持续读取输入,直到遇到EOF(文件结束)
    while(cin >> f[0][0] >> f[0][1] >> f[1][0] >> f[1][1] >> f[2][0] >> f[2][1]) {
        double p = 0;  // 初始化周长变量
        
        // 计算所有边的长度并求和得到周长
        for(int i = 0; i < 3; i++) {
            int j = (i + 1) % 3;  // 下一个顶点(在2之后循环回到0)
            
            // 计算x和y坐标的差值
            long long tx = abs(f[i][0] - f[j][0]);
            long long ty = abs(f[i][1] - f[j][1]);
            
            // 使用勾股定理计算边长
            e[i] = sqrt(tx*tx + ty*ty);
            
            p += e[i];  // 将边长加到周长上
        }
        
        p /= 2;  // 计算半周长
        
        // 使用海伦公式计算面积
        double s = sqrt(p * (p - e[0]) * (p - e[1]) * (p - e[2]));
        
        // 输出面积,精确到小数点后两位
        co...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发