C++计算三角形面积:完整代码与详细解析

本篇博客将介绍如何使用C++编写程序,计算给定三边长的三角形的面积。

代码示例:

#include <iostream>
#include <iomanip>
#include <cmath>

using namespace std;

int main() {
    double a, b, c;
    double p, s;

    cout << '请输入三角形的三边长:' << endl;
    cin >> a >> b >> c;

    // 判断三边是否能构成三角形
    if ((a + b > c) && (b + c > a) && (a + c > b)) {
        // 使用海伦公式计算面积
        p = (a + b + c) / 2;
        s = sqrt(p * (p - a) * (p - b) * (p - c));

        cout << '三角形的面积为:' << fixed << setprecision(2) << s << endl;
    } else {
        cout << '不能构成三角形!' << endl;
    }

    return 0;
}

代码解析:

  1. 引入头文件:

    • iostream:用于输入输出操作(例如,使用 cin 获取用户输入,使用 cout 打印结果)。
    • iomanip:用于格式化输出(例如,使用 fixedsetprecision 控制小数点后的位数)。
    • cmath:用于数学运算(例如,使用 sqrt 计算平方根)。
  2. 声明变量:

    • a, b, c:存储三角形的三边长(double 类型)。
    • p:存储三角形周长的一半(double 类型)。
    • s:存储三角形的面积(double 类型)。
  3. 获取用户输入:

    • 使用 cout 提示用户输入三角形的三边长。
    • 使用 cin 读取用户输入并分别存储到变量 a, b, c 中。
  4. 判断三角形是否合法:

    • 使用 if 语句判断三边长是否满足构成三角形的条件:任意两边之和大于第三边。
  5. 计算三角形面积:

    • 如果三边长构成合法三角形,则使用海伦公式计算面积:
      • 计算三角形周长的一半:p = (a + b + c) / 2
      • 计算面积:s = sqrt(p * (p - a) * (p - b) * (p - c))
  6. 输出结果:

    • 使用 cout 输出计算得到的三角形面积,使用 fixedsetprecision(2) 控制输出结果保留两位小数。
  7. 处理非法情况:

    • 如果输入的三边长不能构成三角形,则使用 cout 输出提示信息:'不能构成三角形!'。
  8. 程序结束:

    • return 0 表示程序正常结束。

这段代码清晰简洁地展示了如何使用 C++ 计算三角形的面积,并包含了对输入数据合法性的判断,增强了程序的健壮性。

C++计算三角形面积:完整代码与详细解析

原文地址: https://www.cveoy.top/t/topic/Sgl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录