绘制圆

 在屏幕上用“*”画一个空心的圆
 *问题分析与算法设计
     打印圆可利用图形的左右对称性。根据圆的方程:
     R*R=X*X+Y*Y
     可以算出圆上每一点行和列的对应关系。

public class T11 {
    
    public static void main(String[] args) {
        
        //   r*r=x*x+y*y
        int r = 10;
        int x = r;
        int y = r;
        
        for(int ay = y; ay>=-y ; ay-- ){ //取出y的区间
            
              int tempX = (int)(Math.sqrt(r*r-ay*ay));//算出x轴坐标
              //System.out.println(tempX);
              for(int ax = -x; ax<=x; ax++){
                  
                  if(Math.abs(ax)==tempX){
                      System.out.print("*");
                  }
                      System.out.print("_");
                  }
              }
              System.out.println();
        }
        
    }

 

posted @ 2012-10-19 10:24  邹晟  阅读(192)  评论(0编辑  收藏  举报