利用三点坐标加海伦公式求三角形面积

**

输入三角形三个顶点的坐标,若有效则计算三角形的面积;如坐标无效,则给出提示

**

import math#导入数学模块
def area():#定义面积函数
#输入坐标,用eval函数
    x1,y1 = eval(input("请输入第一个坐标x1,y1:"))
    x2,y2 = eval(input("请输入第一个坐标x2,y2:"))
    x3,y3 = eval(input("请输入第一个坐标x3,y3:"))

#边长
        a = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)
        b = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)
        c = math.sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2)
#判断两边之和大于第三边
        if (a + b) > c and ( a + c) > b and (b + c) > a:
#根据海伦公式(p=(a+b+c)/2)s=√[p(p-a)(p-b)(p-c)]
            p = (a + b + c) / 2
            s = float(math.sqrt( p * ( p - a ) * ( p - b) * ( p - c)))
            print("三角形面积为:{0}".format(s))
        else:
            print("不能构成三角形,请重新输入")

area()

你可能感兴趣的:(函数,python)