import javax.swing.*; public class Home4{ public static void main (String arge[]){ String A=JOptionPane.showInputDialog("请输入三角形第一条边长:");//输入 String B=JOptionPane.showInputDialog("请输入三角形第二条边长:"); String C=JOptionPane.showInputDialog("请输入三角形第三条边长:"); int a=Integer.parseInt(A);//将字符串转换成int int b=Integer.parseInt(B); int c=Integer.parseInt(C); int p = (a + b + c) / 2; int s = (int)Math.sqrt(p*(p - a) * (p - b) * (p - c));//通过公式求面积 if (a + b > c && b + c > a && a + c > b)//判断是否是三角形 { System.out.println(s); } else { System.out.println("不能构成三角形!"); } } } 自己写的,还请高手指教!
假设有一个三角形,边长分别为a、b、c,三角形的面积S可由以下公式求得:
S=√[p(p-a)(p-b)(p-c)]
而公式里的p为半周长:
p=(a+b+c)/2
有问题吗??
public class Home4{
public static void main (String arge[]){
String A=JOptionPane.showInputDialog("请输入三角形第一条边长:");//输入
String B=JOptionPane.showInputDialog("请输入三角形第二条边长:");
String C=JOptionPane.showInputDialog("请输入三角形第三条边长:");
int a=Integer.parseInt(A);//将字符串转换成int
int b=Integer.parseInt(B);
int c=Integer.parseInt(C);
int p = (a + b + c) / 2;
int s = (int)Math.sqrt(p*(p - a) * (p - b) * (p - c));//通过公式求面积 if (a + b > c && b + c > a && a + c > b)//判断是否是三角形 {
System.out.println(s);
}
else
{
System.out.println("不能构成三角形!");
} }
}
自己写的,还请高手指教!