代码拉取完成,页面将自动刷新
#include <iostream>
#include <cmath>
#include <string>
#define M_PI 3.14159265358979323846
using namespace std;
// 函数声明
double calculateArea(const string& shapeType = "rectangle", double dim1 = 1.0, double dim2 = 1.0, double dim3 = 1.0);
int main() {
int shapeChoice;
cout << "请输入要计算的图形类型(1-圆形,2-矩形,3-三角形): ";
cin >> shapeChoice;
switch (shapeChoice) {
case 1: {
double radius;
cout << "请输入圆形的半径:";
cin >> radius;
double area = calculateArea("circle", radius);
cout << "该图形为圆形,其面积为:" << area << endl;
break;
}
case 2: {
double length, width;
cout << "请输入矩形的长和宽:";
cin >> length >> width;
double area = calculateArea("rectangle", length, width);
cout << "该图形为矩形,其面积为:" << area << endl;
break;
}
case 3: {
double a, b, c;
cout << "请输入三角形的三条边长:";
cin >> a >> b >> c;
double area = calculateArea("triangle", a, b, c);
cout << "该图形为三角形,其面积为:" << area << endl;
break;
}
default:
cout << "无效的输入,请重新运行程序。" << endl;
break;
}
return 0;
}
// 计算不同形状的面积
double calculateArea(const string& shapeType, double dim1, double dim2, double dim3) {
if (shapeType == "circle") {
// π * r²
return M_PI * dim1 * dim1;
}
else if (shapeType == "rectangle") {
// 长 * 宽
return dim1 * dim2;
}
else if (shapeType == "triangle") {
//海伦公式计算三角形面积
double s = (dim1 + dim2 + dim3) / 2; // 半周长
return sqrt(s * (s - dim1) * (s - dim2) * (s - dim3));
}
else {
return 0;
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。