找回密码
 立即注册
搜索
热搜: 活动 交友
查看: 21|回复: 0

创建三角形对象

[复制链接]
发表于 2025-4-9 23:04:11 | 显示全部楼层 |阅读模式
下面是一个关于如何使用 Python 编写一个简单的三角形类的示例代码。这个示例展示了如何创建一个三角形对象,计算其周长、面积和判断三角形的类型(等边、等腰、直角或普通)。
Python 三角形案例
  1. import math

  2. class Triangle:
  3.     def __init__(self, a, b, c):
  4.         """ 初始化三角形的三条边 """
  5.         self.a = a
  6.         self.b = b
  7.         self.c = c

  8.     def is_valid(self):
  9.         """ 检查三角形的有效性 """
  10.         return (self.a + self.b > self.c) and (self.a + self.c > self.b) and (self.b + self.c > self.a)

  11.     def perimeter(self):
  12.         """ 计算周长 """
  13.         if self.is_valid():
  14.             return self.a + self.b + self.c
  15.         else:
  16.             return "无效的三角形"

  17.     def area(self):
  18.         """ 计算面积使用海伦公式 """
  19.         if self.is_valid():
  20.             s = self.perimeter() / 2  # 半周长
  21.             return math.sqrt(s * (s - self.a) * (s - self.b) * (s - self.c))
  22.         else:
  23.             return "无效的三角形"
  24.    
  25.     def type_of_triangle(self):
  26.         """ 判断三角形的类型 """
  27.         if not self.is_valid():
  28.             return "无效的三角形"
  29.         
  30.         if self.a == self.b == self.c:
  31.             return "等边三角形"
  32.         elif self.a == self.b or self.a == self.c or self.b == self.c:
  33.             return "等腰三角形"
  34.         else:
  35.             # 使用勾股定理判断直角三角形
  36.             sides = sorted([self.a, self.b, self.c])
  37.             if math.isclose(sides[0] ** 2 + sides[1] ** 2, sides[2] ** 2):
  38.                 return "直角三角形"
  39.             else:
  40.                 return "普通三角形"


  41. # 测试用例
  42. if __name__ == "__main__":
  43.     a = float(input("请输入第一条边长: "))
  44.     b = float(input("请输入第二条边长: "))
  45.     c = float(input("请输入第三条边长: "))
  46.    
  47.     triangle = Triangle(a, b, c)
  48.    
  49.     if triangle.is_valid():
  50.         print(f"周长: {triangle.perimeter()}")
  51.         print(f"面积: {triangle.area():.2f}")
  52.         print(f"三角形类型: {triangle.type_of_triangle()}")
  53.     else:
  54.         print("您输入的边长无法构成一个有效的三角形。")
复制代码

代码说明
  • Triangle 类:用于表示三角形,初始化时接受三条边的长度。
  • is_valid 方法:检查三角形的三条边是否能构成一个有效的三角形。
  • perimeter 方法:返回三角形的周长。
  • area 方法:使用海伦公式计算三角形的面积。
  • type_of_triangle 方法:判断三角形的类型,包括等边、等腰、直角和普通三角形。
  • 测试用例:在 __main__ 块中,程序接受用户输入的边长并输出三角形的周长、面积和类型。
运行示例你可以将上述代码复制并粘贴到 Python 环境中运行。输入三条边的长度即可获取相关信息。
如果你对代码有任何疑问或需要更多功能,可以随时问我!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|星星学习网

GMT+8, 2025-4-22 09:33 , Processed in 0.125863 second(s), 13 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表