请编写一个程序Triangle.java实现任意输入三条边(a,b,c)后,若能构成三角形且为等腰,等边和直角,则分别输出DY,DB和ZJ,否则输出YB;若不能构成三角形,则输出NO;若输入的是非整数,则打印“输入的三角形边长非整数!”。
时间: 2024-05-26 17:10:41 浏览: 58
用java程序输出一个等腰三角形
4星 · 用户满意度95%
好的,下面是Triangle.java的代码:
import java.util.Scanner;
public class Triangle {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入三角形的三条边(a,b,c):");
double a = sc.nextDouble();
double b = sc.nextDouble();
double c = sc.nextDouble();
if(a<=0 || b<=0 || c<=0 || !isTriangle(a,b,c)){ // 判断是否是三角形
System.out.println("NO");
}else if(a==b && a==c){ // 判断等边
System.out.println("DB");
}else if(a==b || a==c || b==c){ // 判断等腰
System.out.println("DY");
}else if(isRightTriangle(a,b,c)){ // 判断直角
System.out.println("ZJ");
}else{
System.out.println("YB");
}
}
// 判断是否是三角形
public static boolean isTriangle(double a,double b,double c){
if(a+b > c && a+c > b && b+c > a){
return true;
}
return false;
}
// 判断是否是直角三角形
public static boolean isRightTriangle(double a,double b,double c){
if(Math.pow(a,2)+Math.pow(b,2)==Math.pow(c,2) ||
Math.pow(a,2)+Math.pow(c,2)==Math.pow(b,2) ||
Math.pow(b,2)+Math.pow(c,2)==Math.pow(a,2)){
return true;
}
return false;
}
}
如果输入的三角形边长非整数,会输出“输入的三角形边长非整数!”
阅读全文