题目
17.假设已有列表 lst sides=[3,4,5,6,6,6,4,4,3],依次存放了3个三角形的三条边长试编写程序,利用海伦公式计算每个三角形的面积,并将结果存入列表lst_area。
提示
(1)海伦公式为s=p(p-a)(p-b)(p-c)*0.5,其中s为三角形面积,a、b、c为三角形的三条边长,p为半周长(即周长的一半)。
(2)三角形的三条边长可通过表达式lst_sides[i:i+3]获得,其中i表示每个三角形第条边长的起始索引。
参考代码
lst_sides =[3,4,5,6,6,6,4,4,3]
lst_area=[]
for side in range(0,7,3):
side_1=lst_sides[side]
side_2=lst_sides[side+1]
side_3=lst_sides[side+2]
p=(side_1+side_2+side_3)/2
s=(p*(p-side_1)*(p-side_2)*(p-side_3))**0.5
lst_area.append(s)
print(lst_area)
运行结果
[6.0, 15.588457268119896, 5.562148865321747]
说明
此方法仅供学习参考,欢迎讨论