TEST DAY–Group up! You cannot move on until EVERYONE in your group is finished with an activity!
Students will be able to…
* Define a problem in their own words and plan out a solution to the problem
* Break a large problem down into smaller pieces and solve each of the pieces, then use these solutions as building blocks to solve the larger problem
* Utilize the proper control structures to create general solutions that solve multiple Karel worlds
* Write clear and readable code using control structures, functions, decomposition, and comments
These are the key terms for this lesson.
|Break Down (Decompose)||Breaking down (decomposing) your code is splitting it into more functions.|
|Read Like a Story||Programs that “Read like a story” have good decomposition and make the code easy to follow.|
|Programming Style||The way your code is written is the style. It covers the aspects of the code that goes beyond whether or not it just works.|
|Comment||A message in your code that explains what is going on.|
|Decomposition||Decomposition is breaking your program into smaller parts.|
|Fencepost Problem||A problem when using a while loop where you forget one action at the beginning or the end.|
- Review the idea of pseudocode. Plan out your solution to a problem first in plain language, then pseudocode, before ever typing out your code. Your solution should read out like a story, then you can code each step of the story.
- Remember you will need to solve the challenge for every Karel world provided, not just the starter world.
- Sometimes it’s best to learn best by doing. The Karel Challenges synthesize skills and concepts learned from the entire unit. You will likely need multiple class periods to solve all of the challenges.
- Some of the challenges are very tricky, but the longer you spend trying, the more rewarding it is when you finally solve the problem. Growth mindset is very important here. Many solutions will seem promising at first, but then will end up being incorrect. This is an opportunity to learn what was wrong, and try again with a better plan. Most of the time, the first solution you try to code will not end up being correct, and that’s okay! The bugs you run into are chances to learn from your mistakes.
These are all the activities included in the lesson.
- 2.1.1 Fetch
- 2.1.2 Racing Karel
- 2.1.3 Tower Builder
- 2.1.4 Super Cleanup Karel
- 2.1.5 Double Tennis Balls
- 2.1.6 Karel Unit Test
- 2.1.7 Karel Challenges Badge
Answer the following at the top of your Word Online file for this class:
- What is the first thing you should do when approaching a new Karel challenge?
- Why is it important to write out your solution in your own words before starting to code?