0

我正在尝试使用循环,但不知道如何使其在循环中工作。这就是我对同心圆的看法,我想要同样的想法,但有三角形。

int x = 100;   
int y = 100;   
int width = 100;   
int height = 100;     
do{    
  g.drawOval(x, y, width, height);    
  x = x + 5;     
  y = y + 5;     
width = width - 10;     
height = height - 10; 
  } while (width>0 && height>0);    
4

1 回答 1

0

首先,do-while 循环并不常见(尽管它们有时确实有用)——最好熟悉whileand for

由于这似乎是一个家庭作业问题,我要做的是向您展示一些使用多边形绘制同心正方形的代码(这不是正常的方式,您通常只需使用g.drawRect()

int width = 200;
int height = 200;
int xMid = width/2;
int yMid = width/2;
while(width > 0 && height > 0) {
    // Draw the square
    int xLeft = xMid - width/2;
    int xRight = xMid + width/2;
    int yTop = yMid - height/2;
    int yBottom = yMid + height/2;
    int[] xPoints = {xLeft, xRight, xRight, xLeft};
    int[] yPoints = {yTop, yTop, yBottom, yBottom};
    int nPoints = 4;
    g.drawPolygon(xPoints, yPoints, nPoints);

    // Change the dimensions
    width -= 20;
    height -= 20;
}

看看你是否可以修改它来绘制三角形。

于 2013-04-01T10:51:54.243 回答