编写程序,输入三角形三条边判断能否构成直角三角形,若能构成则计算三角形的面积和周长,并输出结果
时间: 2023-12-29 13:10:07 浏览: 153
好的,这是一个简单的三角形判断和计算程序,下面是 Python 代码实现:
```python
import math
# 输入三角形三条边
a = float(input("请输入三角形第一条边长:"))
b = float(input("请输入三角形第二条边长:"))
c = float(input("请输入三角形第三条边长:"))
# 判断能否构成直角三角形
if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:
print("可以构成直角三角形")
# 计算三角形的面积和周长
p = (a + b + c) / 2 # 半周长
area = math.sqrt(p * (p - a) * (p - b) * (p - c)) # 海伦公式求面积
perimeter = a + b + c # 周长
# 输出结果
print("三角形的面积为:", area)
print("三角形的周长为:", perimeter)
else:
print("不能构成直角三角形")
```
程序首先通过 `input` 函数获取三角形的三个边长,然后使用 `if` 语句判断是否能够构成直角三角形,如果能够构成,则使用海伦公式计算三角形的面积,使用边长之和计算三角形的周长,并输出结果。如果不能构成直角三角形,则直接输出提示信息。
相关问题
编写程序,输入三角形三条边判断能否构成直角三角形,若能构成则计算三角形的面积和周长,并输出结果
好的,让我来帮你写一个 Python 程序来解决这个问题。下面是程序代码:
```python
import math
def is_right_triangle(a, b, c):
sides = [a, b, c]
max_side = max(sides)
sides.remove(max_side)
return max_side ** 2 == sides[0] ** 2 + sides[1] ** 2
def triangle_area(a, b, c):
p = (a + b + c) / 2
return math.sqrt(p * (p - a) * (p - b) * (p - c))
def triangle_perimeter(a, b, c):
return a + b + c
a = float(input("请输入三角形的第一条边长:"))
b = float(input("请输入三角形的第二条边长:"))
c = float(input("请输入三角形的第三条边长:"))
if is_right_triangle(a, b, c):
print("可以构成直角三角形")
area = triangle_area(a, b, c)
perimeter = triangle_perimeter(a, b, c)
print("三角形的面积为:%.2f" % area)
print("三角形的周长为:%.2f" % perimeter)
else:
print("不能构成直角三角形")
```
在这个程序中,我们定义了三个函数:`is_right_triangle`、`triangle_area` 和 `triangle_perimeter`。其中,`is_right_triangle` 函数用于判断三条边是否能组成直角三角形,`triangle_area` 函数用于计算三角形的面积,`triangle_perimeter` 函数用于计算三角形的周长。
在主程序中,我们首先通过 `input` 函数获取用户输入的三角形三条边的长度。然后,我们调用 `is_right_triangle` 函数判断三角形是否为直角三角形。如果是直角三角形,则调用 `triangle_area` 和 `triangle_perimeter` 函数计算三角形的面积和周长,并将结果输出。如果不是直角三角形,则直接输出提示信息。
希望这个程序能够帮到你!
用Python编写程序输入三角形三条边判断能否构成直角三角形,若能构成咋计算三角形的面积和周长,并输出结果。
可以使用以下代码实现:
```python
import math
a = float(input("输入三角形第一条边长:"))
b = float(input("输入三角形第二条边长:"))
c = float(input("输入三角形第三条边长:"))
if a**2 + b**2 == c**2 or a**2 + c**2 == b**2 or b**2 + c**2 == a**2:
print("能构成直角三角形")
p = (a + b + c) / 2
area = math.sqrt(p * (p - a) * (p - b) * (p - c))
perimeter = a + b + c
print("三角形面积为:%.2f" % area)
print("三角形周长为:%.2f" % perimeter)
else:
print("不能构成直角三角形")
```
程序首先输入三角形的三条边长,然后使用 if 语句判断是否能够构成直角三角形。如果能构成直角三角形,就计算三角形面积和周长,并输出结果;否则输出不能构成直角三角形。其中,面积和周长的计算使用了 math 模块中的函数。
阅读全文