利用python計算三角形的面積。
(1)輸入三個數,作為三角形的三個邊長,利用海倫公式計算三角形的面積。海倫公式:假設在平面內,有一個三角形,邊長分別為 a、b、c,三角形的面積 S可由以下公式求得。
S=根號p(p-a)(p-b)(p-c)
而公式裡的 p 為半周長(周長的一半):p=(a+b+c)/2
import math
a=float(input("請輸入第一條邊"))
b=float(input("請輸入第二條邊"))
c=float(input("請輸入第三條邊"))
p=(a+b+c)/2
S=math.sqrt(p*(p-a)*(p-b)*(p-c))
print("三角形({},{},{})的面積為:{}".format(a,b,c,S))
(2)第(1)題中代碼並沒有判斷所輸入的三條邊 a、b、c 是否能構成一個三角形,這可能導致在輸入的三條邊不能構成三角形時程序報錯。請對第 1 題進行改進,加上判斷三角形能否構成的條件,當輸入的三條邊不能構成三角形時提示「輸入的邊構不成三角形,請重新輸入!」,直到輸入合法才求解三角形的面積。完成後,將程序提交。
import math
a=float(input("請輸入第一條邊"))
b=float(input("請輸入第二條邊"))
c=float(input("請輸入第三條邊"))
if (a+b>c and a+c>b and b+c>a):
p=(a+b+c)/2
S=math.sqrt(p*(p-a)*(p-b)*(p-c))
print("三角形({},{},{})的面積為:{}".format(a,b,c,S))
else:
print("輸入的邊構成不成一個三角形,請重新輸入!")