黑马程序员技术交流社区

标题: 求解用Math方法打印近似圆 [打印本页]

作者: HM谢文辉    时间: 2013-3-3 23:31
标题: 求解用Math方法打印近似圆
本帖最后由 xwhlive 于 2013-3-5 23:58 编辑

通过API文档查询Math方法,打印出如图所示的近似圆,只要给定不同半径,圆的大小随之发生改变。(图画的不是很好)

              **

           *       *

         *            *

          *        *

              **



作者: wahaha    时间: 2013-3-4 01:29
/*打印近似圆,给定不同的半径,圆的大小随之发生改变*/

class T_3_2
{
    public static void main (String[] args)
    {
        //定义半径
        int r=6;
        //定义y为圆的纵坐标,其中y=y+2是让设置纵坐标的步长,可以调整椭圆的“胖瘦”
        for (int y=0;y<=2*r;y=y+2)
        {
            long x= Math.round(r-Math.sqrt(2*r*y - y*y));
            for (int i=0;i<=2*r;i++ )
            {
                //i==x是指某一个纵坐标对应的一个横坐标,i==2*r-x 是指该纵坐标对应的第二个横坐标
                if (i==x||i==2*r-x)
                {
                    System.out.print("*");
                }
                else
                {
                    System.out.print(" ");
                }
            }
            System.out.print("\n");
        }
    }
}
作者: HM谢文辉    时间: 2013-3-5 23:55
夏添 发表于 2013-3-4 01:29
/*打印近似圆,给定不同的半径,圆的大小随之发生改变*/

class T_3_2

谢谢!!





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2