编写Java程序,判断三角形是否合法。输入一个三角形的三条边,判断由这三条边能否组成一个三角形,若可以,计算周长,若不可以提示“非法三角形”
时间: 2023-11-20 09:05:21 浏览: 36
好的,以下是Java代码实现:
```
import java.util.Scanner;
public class TriangleValidator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入三角形的三条边:");
double a = scanner.nextDouble();
double b = scanner.nextDouble();
double c = scanner.nextDouble();
if (a + b > c && a + c > b && b + c > a) {
double perimeter = a + b + c;
System.out.println("这是一个合法三角形,周长为:" + perimeter);
} else {
System.out.println("非法三角形");
}
scanner.close();
}
}
```
使用 `Scanner` 获取用户输入的三条边,然后判断三角形是否合法,最后输出结果。
相关问题
二、 打印三角形,输入三角形三条边的长度,输出三角形的形状; 1、 完成Java代码编写;
下面是Java代码实现:
```java
import java.util.Scanner;
public class Triangle {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("输入三角形第一条边的长度:");
int a = scanner.nextInt();
System.out.print("输入三角形第二条边的长度:");
int b = scanner.nextInt();
System.out.print("输入三角形第三条边的长度:");
int c = scanner.nextInt();
if(a + b > c && a + c > b && b + c > a) { // 判断是否为合法三角形
if(a == b && b == c) { // 判断是否为等边三角形
System.out.println("这是一个等边三角形");
} else if(a == b || b == c || a == c) { // 判断是否为等腰三角形
System.out.println("这是一个等腰三角形");
} else { // 否则为普通三角形
System.out.println("这是一个普通三角形");
}
} else {
System.out.println("输入的三条边不能构成一个三角形");
}
}
}
```
该代码通过Scanner类获取用户输入的三角形三条边的长度,并使用if语句判断是否为合法三角形。如果是合法三角形,通过判断边长关系输出三角形的形状,否则输出错误提示信息。
用Java 相似三角形是彼此各边长对应成同比例的两个或更多个三角形。 请根据输入的三条边边长,去掉不能构成三角形者,只保留相似三角形中最前面的一个。
好的,我可以帮你实现这个功能。你需要先编写一个判断三角形是否合法的函数,然后再编写一个函数来判断两个三角形是否相似,并输出最前面的那个相似三角形。
以下是一个示例实现:
```java
import java.util.Scanner;
public class SimilarTriangles {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入三角形边长
System.out.println("请输入三角形的三条边长:");
double a1 = scanner.nextDouble();
double b1 = scanner.nextDouble();
double c1 = scanner.nextDouble();
double a2 = scanner.nextDouble();
double b2 = scanner.nextDouble();
double c2 = scanner.nextDouble();
// 判断两个三角形是否合法
if (!isValidTriangle(a1, b1, c1) || !isValidTriangle(a2, b2, c2)) {
System.out.println("输入的三角形不合法!");
return;
}
// 判断两个三角形是否相似
if (isSimilarTriangle(a1, b1, c1, a2, b2, c2)) {
System.out.println("两个三角形相似!");
System.out.printf("最前面的相似三角形为:%.2f, %.2f, %.2f 和 %.2f, %.2f, %.2f\n", a1, b1, c1, a2, b2, c2);
} else {
System.out.println("两个三角形不相似!");
}
}
/**
* 判断三角形是否合法
*/
public static boolean isValidTriangle(double a, double b, double c) {
return a + b > c && a + c > b && b + c > a;
}
/**
* 判断两个三角形是否相似
*/
public static boolean isSimilarTriangle(double a1, double b1, double c1, double a2, double b2, double c2) {
double ratio1 = a1 / a2;
double ratio2 = b1 / b2;
double ratio3 = c1 / c2;
return ratio1 == ratio2 && ratio2 == ratio3;
}
}
```
你可以根据自己的需要进行修改和完善。