pxt-calliope/docs/lessons/digi-yoyo/challenges.md
2016-06-14 17:28:08 -04:00

74 lines
1.3 KiB
Markdown

# digi yoyo challenges
Coding challenges for the digi yoyo.
## Before we get started
Complete the following [guided tutorial](/lessons/digi-yoyo/activity), your code should look like this:
```blocks
let count = 0;
while (count < 10) {
basic.pause(100);
basic.showNumber(count);
count = count + 1;
basic.pause(20);
}
```
### Challenge 1
How about we create a counter that counts backwards from 10 to 1? Let's add a while loop that executes only when `count` is greater than 0.
```blocks
let count = 0;
while (count < 10) {
basic.pause(100);
basic.showNumber(count);
count = count + 1;
basic.pause(20);
}
while (count > 0) {
}
```
### Challenge 2
Inside of the while loop, let's add `pause->(1000)` so that we have a pause between each number as it's counting down. Also, let's show `count`!
```blocks
let count = 0;
while (count < 10) {
basic.pause(100);
basic.showNumber(count);
count = count + 1;
}
while (count > 0) {
basic.pause(100);
basic.showNumber(count);
}
```
* Run the code to see if it works as expected.
### Challenge 3
Now, we need `count` to decrease by one after the micro:bit has displayed the value of `count`.
We can do this by adding this line:
```blocks
let count = 0;
count = count + (count - 1);
```