根据输入的三角形的三边(在黑屏状态下输入)判断三角形的类型,并输出它的面积和它的类型(判断是等边三角形,还是等腰三角形,还是普通三角形,还是三边长不能构成三角形)。
时间: 2024-05-05 08:16:22 浏览: 29
```python
a = float(input("请输入三角形第一条边长:"))
b = float(input("请输入三角形第二条边长:"))
c = float(input("请输入三角形第三条边长:"))
if a + b <= c or a + c <= b or b + c <= a: # 判断是否构成三角形
print("三边长不能构成三角形!")
else:
p = (a + b + c) / 2 # 计算半周长
area = (p * (p - a) * (p - b) * (p - c)) ** 0.5 # 计算面积
if a == b == c:
print("等边三角形,面积为:{:.2f}".format(area))
elif a == b or a == c or b == c:
print("等腰三角形,面积为:{:.2f}".format(area))
else:
print("普通三角形,面积为:{:.2f}".format(area))
```
注:此代码适用于 Python 3.x 版本。
相关问题
C语言根据输入的三角形的三边(在黑屏状态下输入)判断三角形的类型,并输出它的面积和它的类型(判断是等边三角形,还是等腰三角形,还是普通三角形,还是三边长不能构成三角形)
以下是代码实现:
```c
#include<stdio.h>
#include<math.h>
int main()
{
double a, b, c, p, area;
printf("请输入三角形的三边长度:\n");
scanf("%lf %lf %lf", &a, &b, &c);
if(a+b>c && a+c>b && b+c>a) // 判断是否能构成三角形
{
p = (a+b+c)/2; // 计算半周长
area = sqrt(p*(p-a)*(p-b)*(p-c)); // 计算面积
if(a==b && b==c) // 判断是否为等边三角形
{
printf("三角形为等边三角形,面积为%.2lf\n", area);
}
else if(a==b || a==c || b==c) // 判断是否为等腰三角形
{
printf("三角形为等腰三角形,面积为%.2lf\n", area);
}
else // 不是等边三角形也不是等腰三角形,即为普通三角形
{
printf("三角形为普通三角形,面积为%.2lf\n", area);
}
}
else // 不能构成三角形
{
printf("三边长不能构成三角形\n");
}
return 0;
}
```
在输入三角形三边的时候,需要用空格或回车将它们分隔开。程序会先判断输入的三边是否能构成三角形,如果不能,则直接输出“三边长不能构成三角形”;如果可以,就根据三边长度的大小关系判断三角形类型,并计算出它的面积。最后输出面积和类型。
程序根据输入的三角形的三边判断是否能组成三角形,若可以则输出它的面积和三角形的类型。
以下是Python的实现代码:
```python
import math
a = float(input("请输入三角形的第一条边长:"))
b = float(input("请输入三角形的第二条边长:"))
c = float(input("请输入三角形的第三条边长:"))
# 判断是否能组成三角形
if a + b > c and a + c > b and b + c > a:
# 计算面积
p = (a + b + c) / 2
area = math.sqrt(p * (p - a) * (p - b) * (p - c))
print("该三角形的面积为:%.2f" % area)
# 判断类型
if a == b == c:
print("该三角形为等边三角形")
elif a == b or a == c or b == c:
print("该三角形为等腰三角形")
else:
print("该三角形为普通三角形")
else:
print("无法组成三角形")
```
程序首先通过input函数获取用户输入的三角形三边的长度,然后使用if语句判断这三条边是否能够组成三角形。如果能够组成,则计算出三角形的面积,并根据三条边的长度判断三角形的类型。如果无法组成三角形,则输出提示信息。最后,程序使用print函数输出结果。
注意,这里使用了Python的math库来计算平方根,需要先导入该库。如果不想使用math库,也可以使用Python内置的幂运算符 ** 来计算平方根。例如,math.sqrt(x) 可以替换为 x ** 0.5。