黑马程序员技术交流社区

标题: 用*写个圆如何写? [打印本页]

作者: faith    时间: 2014-4-15 10:29
标题: 用*写个圆如何写?
如何只输入半径在 就能用*画个圆出来?
作者: 郭珍    时间: 2014-4-15 12:08

        import java.util.*;

        public class MathRound

        {

          private static int radius;

          public static void main(String[] args)

          {

                int dist;

                System.out.println("Input the radius(R > 2):");

                Scanner scan = new Scanner(System.in);

                try{

                  radius = Integer.parseInt(scan.next());

                }catch(Exception e)

                {

                  e.printStackTrace();

                }

                radius = 2*radius;

                System.out.println("===========When R < 20 works well==============");

                for(int i = 0; i <= radius; i ++)

                {

                  int j = 0 ;

                  if(i == radius/2)//对图形微调

                  continue;

                  //中垂线到*号的距离

                  dist = (int)Math.sqrt(radius*radius - (radius - 2*i)*(radius - 2*i));

                  while(j < radius - dist)//左半圆

                  {

                        System.out.print(" ");

                        j++;

                  }

                  System.out.print("*");

                  dist = radius + dist;

                  while(j < dist)//右半圆

                  {

                        System.out.print(" ");

                        j ++;

                  }

                  System.out.println("*");

                }

          }


作者: 苍穹的雨    时间: 2014-4-15 13:11
亲测楼上程序,最后少了个“}”,虽然不是很圆,还行吧。。。。。
作者: faith    时间: 2014-4-18 08:12
大家都很厉害   以后多多帮助 thanks




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