三角形的周长、面积_编程求解矩形和圆面积_java

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

先创建一个Point类,然后定义Trianglele类。在Trianglele类中定义三个Point的实体来表示一个三角形的三个点,再定义构造方法对这三个点进行初始化,然后定义两个方法求三角形的周长、面积。定义一个测试类,在main()中创建一个对象,求给定三点的三角形的周长、面积。

编程求解矩形和圆面积。要求:为了让程序具有较好的扩展性,编写形状接口(J_sharp),并且让矩形类(J_Rectangle)和圆类(J_Circle)均实现其接口。然后定义一个测试类(J_Area)进行测试。

Point.class

public class Point {

int x;

int y;

Point(){

}

Point(int a,int b){

x=a;

y=b;

}

public static double getInstance(Point p1, Point p2) { return Math.sqrt(Math.pow(p1.x- p2.x, 2) + Math.pow(p1.y- p2.y, 2));

}

}

Triangle.class

public class Triangle {

Point n1,n2,n3;

boolean isTriangle;

public Triangle(Point n1,Point n2,Point n3){

this.n1=n1;

this.n2=n2;

this.n3=n3;

double sideA=Point.getInstance(n1,n2);

double sideB=Point.getInstance(n2,n3);

double sideC=Point.getInstance(n1,n3);

if(sideA+sideB>sideC&&sideB+sideC>sideA){

isTriangle=true;

}

else{

isTriangle=false;

}

}

public void getPerimeter(){

if(isTriangle){

double sideA=Point.getInstance(n1,n2);

double sideB=Point.getInstance(n2,n3);

double sideC=Point.getInstance(n1,n3);

System.out.println("三角形的周长为"+(sideA+sideB+sideC));

}

else{

System.out.println("不能构成三角形!!!");

}

}

public void getArea(){

if(isTriangle){

double sideA=Point.getInstance(n1,n2);

double sideB=Point.getInstance(n2,n3);

double sideC=Point.getInstance(n1,n3);

double p=(sideA+sideB+sideC)/2.0;

System.out.println("三角形的面积为"+ Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC)));

}

else{

System.out.println("不能构成三角形!!!");

}

}

}

Test.class

public class Test {

public static void main(String[] args) {

Point n1=new Point(3,0);

Point n2 =new Point(0,4);

Point n3=new Point(0,0);

Triangle sanjiao=new Triangle(n1,n2,n3);

sanjiao.getPerimeter();

sanjiao.getArea();

}

}

J_sharp接口

public interface J_sharp {

public double Area();

}

J_Rectangle.class

public class J_Rectangle implements J_sharp {

double length;

double width;

double area;

J_Rectangle(double width,double length){

this.width=width;

this.length=length;

}

public double Area(){

area=width*length;

return area;

}

}

J_Circle.class

public class J_Circle implements J_sharp{

double r;

public J_Circle(double r){

this.r=r;

}

public double Area(){

return r*r*3.1415;

}

}

J_Area.class

public class J_Area {

public static void main(String[] args) {

double r=10.0;

double width=12.0;

double length=4.0;

J_Rectangle rectangle=new J_Rectangle(width,length);

J_Circle circle =new J_Circle(r);

double result=rectangle.Area();

System.out.println("矩形的面积为"+result);

result=circle.Area();

相关文档
最新文档