• 「Python条件结构」求三角形的面积


    功能要求

    编写一个控制台应用程序,从键盘上输入三角形的三边长,判断是否能组成三角形;如果可以构成三角形,则输出它的面积和三角形类型(等腰、等边、直角、普通),并根据海伦公式求出三角形的面积。

    海伦公式:假设在平面内,有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:

     

    而公式里的p为半周长(周长的一半):

     

    实例代码

    1. import math  # 导入math模块
    2. # 从键盘上输入三角形的三条边长
    3. a, b, c = eval(input('请输入三角形三条边长:'))
    4. if a > 0 and b > 0 and \
    5.         c > 0 and a + b > c and a + c > b and b + c > a:  # 判断是否构成三角形
    6.     # 用海伦公式计算面积
    7.     p = (a + b + c) / 2  # 求出周长的一半
    8.     area = math.sqrt(p * (p - a) * (p - b) * (p - c))
    9.     if a == b != c or a == c != b or b == c != a:  # 判断是否为等腰三角形
    10.         result = '等腰三角形'
    11.     elif a == b == c:  # 判断是否为等边三角形
    12.         result = '等边三角形'
    13.     elif a ** 2 + b ** 2 == c ** 2 or \
    14.             b ** 2 + c ** 2 == a ** 2 or \
    15.             c ** 2 + a ** 2 == b ** 2:  # 判断是否为直角三角形
    16.         result = '直角三角形'
    17.     else:
    18.         result = '普通三角形'
    19. else:
    20.     result = '非三角形'
    21. if result != '非三角形':
    22.     print('三角形面积是:%.2f' % area)
    23. print('三边构成:%s' % result)

    运行结果

    从键盘上输入“1,1,3”,则a = 1,b = 1,c = 3,由于a + b = 2 < c = 3,不能构成三角形。

     

     

    从键盘上输入“2,2,3”,则a = 2,b = 2,c = 3,由于a + b = 4 > c = 3,能构成三角形,根据海伦公式计算出三角形的面积为1.98,由于a = b = 2 ≠ c = 3,因此为等腰三角形。

     

     

    从键盘上输入“3,3,3”,则a = 3,b = 3,c = 3,能构成三角形,根据海伦公式计算出三角形的面积为3.9,由于a = b = c = 3,因此为等边三角形。

     

     

    从键盘上输入“3,4,5”,则a = 3,b = 4,c = 5,由于a + b = 7 > c = 5,能构成三角形,根据海伦公式计算出三角形的面积为6,由于a * a + b * b = 25 = c * c = 25,因此为直角三角形。

     

     

    从键盘上输入“4,5,6”,则a = 4,b = 5,c = 6,由于a + b = 7 > c = 5,能构成三角形,根据海伦公式计算出三角形的面积为6,由于a * a + b * b = 25 = c * c = 25,因此为直角三角形。

     

  • 相关阅读:
    Spring Boot+Vue+阿里云OOS实现图片上传
    Linux系统中安装Redis-7.0.4
    Spring七天速成:入门必看(一)
    李沐:用随机梯度下降来优化人生!
    【Qt】Qt中的中心部件意义
    JUnit进行单元测试
    第五十二章 开发自定义标签 - Using csr %CSP.AbstractAtom Write Methods
    消能减震神器之“黏滞阻尼器”的力学原理与应用
    Redis 排查大 key 的3种方法,优化必备
    【数据结构】二叉树
  • 原文地址:https://blog.csdn.net/huijianight/article/details/125548297