# Do Loop

I have the following code that runs through a Do Loop and draws a certain amount of rectangles based on how many are specified in the numericUpDown control (1 through 8).

I would like to space the yloc a specific distance (say 75) every 2 rectangles (see attached picture).

Any thoughts on the best way?

System.Drawing.Graphics graphicsObj;
graphicsObj = this.CreateGraphics();

Pen myPen = new Pen(System.Drawing.Color.Black, 1);

int i = 1;
int xLoc = 150;
int yloc = 200;

do
{
Rectangle myRectangle = new Rectangle(xLoc, yloc, 50, 25);
graphicsObj.DrawRectangle(myPen, myRectangle);

i++;
//xLoc = xLoc + 50;
yloc = yloc + 25;

} while (i <= numericUpDown.Value);
draw-box-1.jpg
###### Who is Participating?

Freelance programmer / ConsultantCommented:
Something like this where you increment by a different quantity every second time through the loop ?
if (( i % 2 ))
yloc = yloc + 25;
else
yloc = yloc +75;
0

Author Commented:
HI Andy,  Worked fine once I updated the below line with ==0.
if ((i % 2) ==0)

Thanks
0

Freelance programmer / ConsultantCommented:
ps.  This alternative should do what you wanted in that case (swapped the increments around)

if (( i % 2 ))
yloc = yloc + 75;
else
yloc = yloc +25;
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.