你好,我按照你的要求写的如下代码,也给足了注释,可以直接运行:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.logging.Level;
import java.util.logging.Logger;
public class JavaApplication1 {
public static void main(String[] args) {
System.out.println("请输入三角形的3条边长,每次回车表示一次输入:");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
try {
int[] a = new int[3];
for (int i = 0; i < 3; i++) {
a[i] = Integer.parseInt(in.readLine());//获得3条边的长
}
if ((a[0] + a[1] > a[2]) && (a[1] + a[2] > a[0]) && (a[0] + a[2] > a[1])) {//判断是否构成三角形,根据两边之和>第三636f7079e799bee5baa6e997aee7ad9431333264656664边
int p = (a[0] + a[1] + a[2]) / 2;//求得p=(a+b+c)/2
System.out.println("三角形的面积为:" + Math.sqrt(p * (p - a[0]) * (p - a[1]) * (p - a[2])));//根据海伦公式S=√[p(p-a)(p-b)(p-c)]
} else {
System.out.println("输入的三条边,不能构成三角形。");
}
} catch (Exception e) {
System.out.println("输入的三条边,不能构成三角形。");
} finally {
try {
in.close();
} catch (IOException ex) {
Logger.getLogger(JavaApplication1.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}