JAVA自学之每日一题(七)

来源:互联网 发布:深圳盘古数据上市了没 编辑:程序博客网 时间:2024/06/05 01:16

题目要求:正n边形类

package 正n边形;public class Test{    public static void main(String[] args)    {        RegularPolygon r1 = new RegularPolygon();        RegularPolygon r2 = new RegularPolygon(6, 4);        RegularPolygon r3 = new RegularPolygon(10, 4, 5.6, 7.8);        System.out.println("r1的周长为:" + r1.getPerimeter() + " 面积为:"                + r1.getArea());        System.out.println("r2的周长为:" + r2.getPerimeter() + " 面积为:"                + r2.getArea());        System.out.println("r3的周长为:" + r3.getPerimeter() + " 面积为:"                + r3.getArea());    }}class RegularPolygon{    final double PI = 3.14159;    private int n = 3;    private double side = 1;    private double x = 0;    private double y = 0;    RegularPolygon()    {    }// 默认无参构造    RegularPolygon(int newN, double newSide)// 中心在(0,0)的构造函数    {        n = newN;        side = newSide;        x = 0;        y = 0;    }    RegularPolygon(int newN, double newSide, double newX, double newY)// 任意参数的构造函数    {        n = newN;        side = newSide;        x = newX;        y = newY;    }    void setN(int newN)    {        n = newN;    }    int getN()    {        return n;    }    void setSide(double newSide)    {        side = newSide;    }    double getSide()    {        return side;    }    void setX(double newX)    {        x = newX;    }    double getX()    {        return x;    }    void setY(double newY)    {        y = newY;    }    double getY()    {        return y;    }    double getPerimeter()// 周长    {        return n * side;    }    double getArea()// 面积    {        return (n * side * side) / 4 * Math.tan(PI / n);    }}
0 0
原创粉丝点击