输入一个表示几何形状名称(圆形、球、圆柱体、圆锥和正三棱柱)的字符串,再在 一行内输入这种图形的数据,根据表示名称的字符串选择合适的公式计算几何形状的(表) 面积和体积,若为二维图形,只计算面积,若为三维图形,计算其表面积与体积,结果严格 保留 2 位小数。python
时间: 2024-09-28 21:17:43 浏览: 94
在Python中,你可以编写一个函数来处理这个问题,通过检查输入的几何形状名称并使用适当的公式计算面积和体积。这里是一个简单的例子:
```python
def calculate_shape_area_volume(shape, data):
shape_map = {
'圆形': lambda diameter: round(3.14 * (diameter ** 2), 2),
'球形': lambda radius: round(4/3 * 3.14 * (radius ** 3), 2),
'圆柱体': lambda radius, height: round(3.14 * (radius ** 2) * height, 2),
'圆锥体': lambda radius, height: round(0.5 * 3.14 * (radius ** 2) * height, 2),
'正三棱柱': lambda base_edge, height: round((base_edge ** 2) * 1.5 + 3 * base_edge * height, 2),
}
if shape in shape_map:
area_or_volume = shape_map[shape]
return area_or_volume(data)
else:
raise ValueError("Invalid shape name")
# 示例
print(calculate_shape_area_volume('圆形', 5)) # 单位:平方单位
print(calculate_shape_area_volume('球形', 3)) # 单位:立方单位
print(calculate_shape_area_volume('圆柱体', 4, 6)) # 面积和体积
```
这个函数首先定义了一个字典,其中键是几何形状名称,值是对应的面积或体积计算函数。然后根据传入的形状名调用相应的函数,并将数据作为参数传递。如果形状名不在字典中,函数会抛出一个错误。
如果你想让用户输入形状和数据,可以添加用户交互部分,比如`shape_name = input("请输入几何形状名称:")` 和 `data = float(input("请输入相应尺寸:"))`。
阅读全文