不想打字了,贴图。
题目一
package ch07;
public class a {
public static void main(String[] args) {
RegularPolygon r1=new RegularPolygon();
System.out.println("r1的周长="+r1.getPerimeter()+" r1的面积="+r1.getArea());
RegularPolygon r2=new RegularPolygon(6,4);
System.out.println("r2的周长="+r2.getPerimeter()+" r2的面积="+r2.getArea());
RegularPolygon r3=new RegularPolygon(10,4,5.6,7.8);
System.out.println("r3的周长="+r3.getPerimeter()+" r3的面积="+r3.getArea());
}
}
class RegularPolygon{
private int n=3;
private double side=1;
private double x=0;
private double y=0;
RegularPolygon(){};
RegularPolygon(int newn,int news){
n=newn;
side=news;
x=0;
y=0;
};
RegularPolygon(int newn,int news,double newx,double newy){
n=newn;
side=news;
x=newx;
y=newy;
};
public void setn(int newn){
n=newn;
};
public void setside(double news){
side=news;
};
public void setx(double newx){
x=newx;
};
public void sety(double newy){
y=newy;
};
public int getn(){
return n;
};
public double getside(){
return side;
};
public double getx(){
return x;
};
public double gety(){
return y;
};
public double getPerimeter(){
return n*side;
};
public double getArea(){
double p=3.141592535;
return (n*side*side)/(4*Math.tan(p/n));
};
}
题目二
package ch07;
public class b {
public static void main(String[] args) {
Circle2D c1 = new Circle2D(2,2,5.5);
System.out.println("c1的周长为:"+c1.getPerimeter());
System.out.println("c1的面积为:"+c1.getArea());
System.out.println("c1.contains(3, 3)的结果为:"+c1.contains(3, 3));
System.out.println("c1.contains(new Circle2D(4, 5, 10.5))的结果为:"+c1.contains(new Circle2D(4, 5, 10.5)));
System.out.println("c1.overlaps(new Circle2D(3, 5, 2.3))的结果为:"+c1.overlaps(new Circle2D(3, 5, 2.3)));
}
}
class Circle2D{
private double x;
private double y;
private double radius;
Circle2D(){
x=0;
y=0;
radius=1;
};
Circle2D(double x,double y,double radius){
this.x=x;
this.y=y;
this.radius=radius;
}
public double getX(){
return x;
}
public double getY() {
return y;
}
public double getRadius() {
return radius;
}
public double getArea(){
return 3.14*radius*radius;
}
public double getPerimeter(){
return 3.14*2*radius;
}
public boolean contains(double x1,double y1){
if(Math.sqrt(Math.pow(x-x1, 2)+Math.pow(y-y1, 2))<radius)
return true;
return false;
}
public boolean contains(Circle2D circle){
if(Math.sqrt(Math.pow(x- circle.x, 2)+Math.pow(y-circle.y, 2))< circle.getRadius())
return true;
return false;
}
public boolean overlaps(Circle2D circle){
if(Math.sqrt(Math.pow(x-circle.x, 2)+Math.pow(y-circle.y, 2))>=radius-circle.getRadius()&&Math.sqrt(Math.pow(x-circle.x, 2)+Math.pow(y-circle.y, 2))<=radius+circle.getRadius())return true;
return false;
}
}