ASP.NET Basics, Part 4: Looping the Loop - Counting Down
(Page 2 of 7 )
The most basic loop available in C# is the "while" loop, and it looks like this:
while (condition)
{
do this!
}
Or, to make the concept clearer,
while (rich Uncle Ed's still breathing)
{
be nice to him
}
The "condition" here is a standard C# conditional expression, whichevaluates to either true or false. So, were you told to write the aboveexample in C#, it would look like this:
while (rich_old_guy_lives == 1)
{
be_nice();
}
The "while" control structure tests the conditional expression first,and only proceeds to execute the statements within the loop if theexpression evaluates to true.
How about an example to demonstrate the "while" loop?
<script language="C#" runat="server">
void Page_Load()
{
// define a variable for the countdown
int countdown = 10;
output.Text = "Beginning countdown...";
// repeat the statement so long as the
// variable is greater than or equal
// to zero
while(countdown >= 0)
{
output.Text += "
" + countdown;
countdown--;
}
output.Text += "<h1>Houston, we have lift-off!</h1>";
}
</script>
<html>
<head><title>Countdown To Launch</title></head>
<body>
<asp:label id="output" runat="server" />
</body>
</html>
Here is the output.
Beginning Countdown...
10
9
8
7
6
5
4
3
2
1
0
Houston, we have lift-off!
Each loop requires a variable, or "loop counter," to track the number of iterations. In the example above, this variable is called "countdown." I have initialized it to 10, since the loop will start counting down from that value.
Next, we have the "while" loop proper:
<%
while(countdown >= 0)
{
output.Text += "
" + countdown;
countdown--;
}
%>
This is pretty straightforward stuff. The "while" statement will checkif the value of the "countdown" variable is greater than or equal tozero. If it is, it will enter the loop and execute the enclosedstatements (in this case, print the value of the variable followed by aline break). It then decrements the value of the "countdown" variable byone (using the -- operator discussed previously), and repeats theprocedure.
On the eleventh iteration, the value of the countdown variable will be-1. Therefore, the result of the conditional statement will be false,the loop will be exited and the statements following the loop will beprocessed.
What if you forget to decrement the value of the loop counter (a commonnewbie mistake)? Start praying, and flip the page.
Next: The Infinite Loop and the Careless Coder >>
More ASP.NET Articles
More By Harish Kamath (c) Melonfire