如何用编程 任意输入3个数判断能否构成三角形?
发布网友
发布时间:2022-05-05 21:19
我来回答
共4个回答
热心网友
时间:2022-06-28 03:09
#include<stdio.h>
int main()
{
int a[3];int i,t;
printf("请输入三个整数:\n");
for(i=0;i<3;i++)
scanf("%d",&a[i]);
if(a[0]>a[1]){t=a[0];a[0]=a[1];a[1]=t;}
if(a[1]>a[2]){t=a[1];a[1]=a[2];a[2]=t;}
if(a[0]>a[2]){t=a[0];a[0]=a[2];a[2]=t;}
for(i=0;i<3;i++)printf("%d ",a[i]);
if(a[0]+a[1]>a[2])printf("这三个数能构成");
if(a[0]*a[0]+a[1]*a[1]==a[2]*a[2])printf("直角");
else if(a[0]==a[1]&&a[1]==a[2]&&a[0]==a[2])printf("等边");
else printf("一般");
printf("三角形\n");
for(i=0;i<3;i++)
scanf("%f",&a[i]);
return 0;
}
是不是这个意思?
热心网友
时间:2022-06-28 03:09
如果只是判定是否能构成三角形的话,就用数学的判断方法,2边之和大于第3边;2边之差小于第3边.
当然之前最好判断下,看2个短边相加是否大于最长的,2个比较大的差是不是小于最短的.
热心网友
时间:2022-06-28 03:10
public static void main(String args []){
double a;
double b;
double c;
Scanner s=new Scanner(Sytem.in);
a=s.nextDouble();
b=s.nextDouble();
c=s.nextDouble();
if(a+b>c && a+c>b && b+c >a){
System.out.println("可以构成三角形");
}
else{
System.out.println("无法构成三角形");
}
}
热心网友
时间:2022-06-28 03:10
#include<stdio.h>
void main()
{
int a, b, c;
scanf("%d%d%d",&a,&b,&c);
printf("请输入三个数\n");
if(a+b>c&&a-c<b)
printf("能构成三角行\n");
else
printf("不能构成三角行);
}