This lesson presents the final core computer capability: the ability to repeat something multiple times. By combining this with our ability to store and manipulate data and make decisions, we can truly solve any problem. So let’s get started!
while
while
Let’s meet our first loop.
It’s the simplest one in Kotlin, and repeats a block of code while
a condition is true
:
The while
loop declaration looks quite similar to the if
statements we’ve already seen.
First the keyword while
, followed by a conditional expression inclosed in parantheses, followed by a block.
However, unlike the if
statement which only executes once, the while
statement continues to execute the block as long as the condition evaluates to true
.
This can cause problems!
for
for
While while
is the simplest loop, probably the most common loop you’ll encounter is called a for
loop.
It’s more complicated than a while
loop, but designed to capture a common loop programming pattern.
We frequently want to use a loop to increment a variable starting at zero and ending when it reaches some value.
(We’ll see why tomorrow.)
This is so common that Kotlin provides a second loop that captures this pattern. Let’s go through it together:
The for
loop syntax is quite flexible and can produce lots of different sequences of values in the index variable:
However, by far the most common for
loop you’ll see is the start at 0, increment by 1, and end when the value is strictly less than some limit:
There is one important difference between this while
loop:
and this for
loop:
Let’s try and figure out what it is!
We've learned how to use computers to manipulate numeric data and make simple decisions using conditionals. But we haven't examined one of their most important capabilities: the ability to repeat the same task over, and over, and over again. A computer will never get tired—although it may run out of battery—and it will never make a mistake—as long as you program it correctly. So this capability is the grounds for our hope that someday computers may help eliminate many current forms of drudgery currently experienced by humans, particularly when forced to repeat mindless tasks.
Let's get started by writing using a simple loop. Assuming an Int
variable named repeat
has been declared and
initialized to a value larger than or equal to zero, write a loop that prints "Victory!" repeat
times on separate
lines. You may use any kind of loop you want! But do not modify the value of repeat
.
for
v. while
for
v. while
Let’s explore the connection between the two types of loop using a diagram.
Let's write a simple loop.
Assuming an Int
variable named count
has been declared and initialized to a value larger than zero, write a
loop that prints the numbers between 0 and count - 1
, inclusive, one number each line.
So if count
is 4
, you should print:
0
1
2
3
You can use any kind of loop you want!
But do not modify count
.
Need more practice? Head over to the practice page.