求大神源码
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
interface Shape {
double getArea();
double getCircumsta();
}
class Triangle implements Shape {
private double sideA;
private double sideB;
private double sideC;
private boolean flage;
Triangle(double a, double b, double c) {
this.sideA = a;
this.sideB = b;
this.sideC = c;
if ((a + b > c && a - b < c) || (a - c > b && a + c > b)
|| (b + c > a && b - c < a)) {
this.flage = true;
} else {
this.flage = false;
}
}
public double getArea() {
if (flage) {
double s = sideA + sideB + sideC;
return Math.sqrt(s * (s - sideA) * (s - sideB) * (s - sideC));
} else {
System.out.println("不能构成三角形");
return 0.0;
}
}
public double getCircumsta() {
if (flage) {
return sideA + sideB + sideC;
}
else {
System.out.println("不能构成三角形");
return 0.0;
}
}
}
class RecTangle implements Shape {
private double sideA;
private double sideB;
RecTangle(double a, double b) {
this.sideA = a;
this.sideB = b;
}
public double getArea() {//实现接口方法
return sideA * sideB;
}
public double getCircumsta() {//实现接口方法
return 2 * (sideA + sideB);
}
}
public class T1 {
public static void main(String[] args) {
Scanner myInput = new Scanner(System.in);
System.out.println("请输入需要计算的三角形的三边长:");
System.out.println("第一边:");
double a = myInput.nextDouble();
System.out.println("第二边:");
double b = myInput.nextDouble();
System.out.println("第三边:");
double c = myInput.nextDouble();
Triangle myTri = new Triangle(a, b, c);//创建一个三角形对象
System.out.println("请输入需要计算的长方形的边长:");
System.out.println("长:");
double length = myInput.nextDouble();
System.out.println("宽:");
double wide = myInput.nextDouble();
RecTangle myRec = new RecTangle(length,wide);//创建一个长方形对象
System.out.println("三角形周长:" + myTri.getCircumsta());
System.out.println("三角形面积:" + myTri.getArea());
System.out.println("长方形周长:" + myRec.getCircumsta());
System.out.println("长方形面积:" + myRec.getArea());
myInput.close();//资源回收
}
}