面试了一道题:判断三角形式等腰、等边、普通,但是我写错了,后来想了想可以这么判断(当然可以用多个if判断)
package com.xx;
import java.util.ArrayList;
import java.util.List;
public class TriangleTest {
public static void main(String[] args) {
TriangleModule(4, 5, 4);
}
// 方法一,两两比较,类似于排序
public static void TriangleModule(int a, int b, int c) {
int sides[] = new int[] { a, b, c };
int temp = 0;
for (int i = 0; i < sides.length; i++) {
for (int j = i + 1; j < sides.length; j++) {
if (sides[i] == sides[j]) {
temp++;
}
}
}
if (temp == 1) {
System.out.println("等腰三角形");
} else if (temp == 3) {
System.out.println("等边三角形");
} else {
System.out.println("普通三角形");
}
}
//方法二,借用一个集合,把三条边放入判断此边是否存在
public static void TriangleModule2(int a, int b, int c) {
int sides[] = new int[] { a, b, c };
List<Integer> list = new ArrayList<Integer>();
int temp = 0;
for (int i = 0; i < sides.length; i++) {
if (list.contains(sides[i])) {
temp++;
}
list.add(sides[i]);
}
if (temp == 1) {
System.out.println("等腰三角形");
} else if (temp == 2) {
System.out.println("等边三角形");
} else {
System.out.println("普通三角形");
}
}
}
本文介绍了一种通过比较三角形三边长度来判断其是否为等腰、等边或普通三角形的方法。提供了两种实现方式:一种是通过两两比较边长,另一种是使用集合来检查边长的重复情况。
866

被折叠的 条评论
为什么被折叠?



