编写程序实现输入三角形的三条边,判别它们能否形成三角形,若能,则判断是等边、等腰、还是一般三角形。 输入格式:1 2 3 输出格式:不能构成三角形 输入格式:5 5 5 输出格式:等边三角形 输入格式:5 5 6 输出格式:等腰三角形 输入格式:4 5 6 输出格式:一般三角形
时间: 2023-05-23 08:05:28 浏览: 178
```python
a, b, c = map(int, input().split())
if a+b > c and a+c > b and b+c > a: # 判断能否构成三角形
if a == b == c:
print("等边三角形")
elif a == b or b == c or a == c:
print("等腰三角形")
else:
print("一般三角形")
else:
print("不能构成三角形")
```
注:
1. 使用 `map(int, input().split())` 可以一行输入多个 int 类型的数据;
2. 判断三角形是否能够构成,只需判断其中任意两条边之和是否大于第三边即可;
3. 判断三角形类型时,先判断是否为等边三角形,再判断是否为等腰三角形,最后就是一般三角形了。
相关问题
编写程序实现输入三角形的三条边,判别它们能否形成三角形,若能,则判断是等边、等腰、还是-般三角形。 输入格式:123 输出格式不能构成三角形 输入格式:555 输出格式等边三角形 输入格式:556 输出格式等腰三角形 输入格式:456 输出格式-般三角形
以下是实现输入三角形的三条边,判别它们能否形成三角形,若能,则判断是等边、等腰、还是-般三角形的程序:
```
#include <stdio.h>
int main() {
int a, b, c;
printf("请输入三角形的三条边:");
scanf("%d %d %d", &a, &b, &c);
if (a + b > c && a + c > b && b + c > a) {
if (a == b && b == c) {
printf("等边三角形\n");
} else if (a == b || b == c || a == c) {
printf("等腰三角形\n");
} else {
printf("普通三角形\n");
}
} else {
printf("不能构成三角形\n");
}
return 0;
}
```
输入格式为三个整数,输出格式为对应的三角形类型或者不能构成三角形。
构造三角形类,利用三角形三条边求面积,同时(自定义)异常处理 判别三角形三条边是
非负数且任意两边之和大于第三边,否则抛出异常。
可以使用以下代码实现:
class Triangle:
def __init__(self, a, b, c):
if a <= 0 or b <= 0 or c <= 0:
raise ValueError("三角形的边长必须为正数")
if a + b <= c or a + c <= b or b + c <= a:
raise ValueError("三角形两边之和必须大于第三边")
self.a = a
self.b = b
self.c = c
def area(self):
p = (self.a + self.b + self.c) / 2
return (p * (p-self.a) * (p-self.b) * (p-self.c)) ** 0.5
try:
t = Triangle(3, 4, 5)
print("三角形面积为:", t.area())
except ValueError as e:
print(e)
输出结果:
三角形面积为: 6.0
阅读全文