Python 计算三角形面积

三角形面积计算公式:

1.已知三角形底a,高h,则 S=ah/2

2,已知三角形的三个边长,海伦公式S = √[s(s-a)(s-b)(s-c)]

本次编程使用海伦公式计算三角形的面积:

1,输入三角形三个边长数据

2,使用海伦公式计算面积

a = int(input("请输入三角形的第一个边长:"))
b = int(input("请输入三角形的第二个边长:"))
c = int(input("请输入三角形的第三个边长:"))
s = (a+b+c) / 2
# print(s)
S = (s*(s-a)*(s-b)*(s-c))**0.5
S = round(S,2)  # 保留两位有效点数
print("三角形的三个边长分别为:"+str(a)+"、"+str(b)+"、"+str(c))
print("面积S是:"+str(S))

优化程序

1,限定三角形的边长数据范围,>0的浮点数;

2,数据需满足三角形三个边长的关系

    两边之和大于第三边

a = float(input("请输入第一个边长:"))
b = float(input("请输入第二个边长:"))
c = float(input("请输入第三个边长:"))

if 0 < c < a + b and a + c > b > 0 and b + c > a > 0:
    s = (a + b + c) / 2
    S = (s * (s - a) * (s - b) * (s - c)) ** 0.5  # 海伦公式
    S = round(S, 2)  # 计算数据保留2为有效小数
    print("三角形的三个边长分别为:" + str(a) + "、" + str(b) + "、" + str(c))
    print("面积S是:" + str(S))
else:
    print("输入的数据有误")

将三角形边长判定条件编写成一个函数

a = float(input("请输入第一个边长:"))
b = float(input("请输入第二个边长:"))
c = float(input("请输入第三个边长:"))

def det_tri(a, b, c):
    if 0 < c < a + b and a + c > b > 0 and b + c > a > 0:
        return True
    else:
        return False


if det_tri(a, b, c):
    s = (a + b + c) / 2
    S = (s * (s - a) * (s - b) * (s - c)) ** 0.5  # 海伦公式
    S = round(S, 2)  # 计算数据保留2为有效小数
    print("三角形的三个边长分别为:" + str(a) + "、" + str(b) + "、" + str(c))
    print("面积S是:" + str(S))
else:
    print("输入的数据有误")

你可能感兴趣的:(python)