设计一个简单的菜单,要求输入相应的选项计算图形的面积(至少在下面5种图形中任选3种图形的面积) (1、梯形面积;2、三角形面积;3、球形表面积;4、圆柱表面积;5、长方体表面积) 要求: (1)输出结果要有格式控制 (2)要先判断是否构成图形 (3)要对输入数据做异常处理
时间: 2023-08-31 08:27:16 浏览: 63
好的,以下是一个Python程序示例,可以根据用户输入的选项计算图形的面积:
```python
import math
while True:
# 打印菜单
print("1. 梯形面积")
print("2. 三角形面积")
print("3. 球形表面积")
print("4. 圆柱表面积")
print("5. 长方体表面积")
print("0. 退出")
choice = input("请选择要计算的图形(0-5):")
if choice == "0":
break
try:
choice = int(choice)
if choice < 1 or choice > 5:
raise ValueError("无效的选项")
if choice == 1:
# 计算梯形面积
a = float(input("请输入上底长:"))
b = float(input("请输入下底长:"))
h = float(input("请输入高:"))
area = (a + b) * h / 2
print("梯形面积为:{:.2f}".format(area))
elif choice == 2:
# 计算三角形面积
a = float(input("请输入底长:"))
h = float(input("请输入高:"))
area = a * h / 2
print("三角形面积为:{:.2f}".format(area))
elif choice == 3:
# 计算球形表面积
r = float(input("请输入半径:"))
area = 4 * math.pi * r ** 2
print("球形表面积为:{:.2f}".format(area))
elif choice == 4:
# 计算圆柱表面积
r = float(input("请输入底面半径:"))
h = float(input("请输入高:"))
area = 2 * math.pi * r * h + 2 * math.pi * r ** 2
print("圆柱表面积为:{:.2f}".format(area))
elif choice == 5:
# 计算长方体表面积
a = float(input("请输入长:"))
b = float(input("请输入宽:"))
h = float(input("请输入高:"))
area = 2 * (a * b + a * h + b * h)
print("长方体表面积为:{:.2f}".format(area))
except ValueError as e:
print("输入错误:", e)
```
该程序使用了while循环实现菜单,用户可以根据需要选择计算哪个图形的面积,程序会根据用户的选择进行相应的计算。程序中使用了try-except语句来处理输入数据的异常情况,确保程序的稳定性和可靠性。程序使用了字符串格式化来对结果进行格式控制,确保输出结果的美观性。你可以根据需要自行修改程序的样式和细节。
阅读全文