计算三角形面积。要求:用Python编程实现,接收用户从键盘输入的三角形的三边长,判断任意两边之和能否大于第三边,
如果大于,则计算三角形的面积,并输出,否则显示“你所输入的三边长不能构成三角形”。运行程序一次,可以计算多个三角形的面积。(功能简称:三角形)
要求:
(1)计算三角形面积,在一个自定义函数fun(a,b,c)中完成,该函数名可以改成其它名字。该函数返回面积值。
(2)主调程序中完成功能:三边长数值的输入、判断能否构成三角形和面积值的输出。
(3)形参a、b、c接收主调程序传递过来的实参:三边的值,要求使用关键字参数传递。
a = float(input('输入三角形第一边长:'))
b = float(input('输入三角形第二边长: '))
c = float(input('输入三角形第三边长:'))
if a + b > c and a + c > b and b + c > a:
def sjxmj():
return a * b * (1 - ((a ** 2 + b ** 2 - c ** 2) / (2 * a * b)) ** 2) ** 0.5 /2
print("三角形的面积为:",sjxmj())
else:
print('你所输入的三边长不能构成三角形')
能正常运行,但是没有使用关键字参数
符合题目要求
是这个意思吗
a = float(input('输入三角形第一边长:'))
b = float(input('输入三角形第二边长: '))
c = float(input('输入三角形第三边长:'))
def fun(a, b, c):
return a * b * (1 - ((a ** 2 + b ** 2 - c ** 2) / (2 * a * b)) ** 2) ** 0.5 / 2
if a + b > c and a + c > b and b + c > a:
print("三角形的面积为: ", fun(a, b, c))
else:
print('你所输入的三边长不能构成三角形')
运行结果如下:
def func(a, b, c):
return a * b * (1 - ((a ** 2 + b ** 2 - c ** 2) / (2 * a * b)) ** 2) ** 0.5 / 2
if __name__ == '__main__':
a = float(input('输入三角形第一边长:'))
b = float(input('输入三角形第二边长: '))
c = float(input('输入三角形第三边长:'))
if a + b > c and a + c > b and b + c > a:
result = func(a, b, c)
print("三角形的面积为:", result)
else:
print('你所输入的三边长不能构成三角形')
已知三边,三角形面积公式一般选用海伦公式:
S=(p*(p-a)*(p-b)*(p-c))**0.5, 其中p=(a+b+c)/2
a = float(input('输入三角形第一边长:'))
b = float(input('输入三角形第二边长: '))
c = float(input('输入三角形第三边长:'))
def fun(a, b, c):
p = (a+b+c)*0.5
return (p*(p-a)*(p-b)*(p-c))**0.5
if a + b > c and a + c > b and b + c > a:
print("三角形的面积为: ", fun(a, b, c))
else:
print('你所输入的三边长不能构成三角形')