pxt-calliope/olddocs/js/lessons/jailbreak.md
2016-05-26 19:33:26 -07:00

107 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# jailbreak lesson
Break out of a counting loop by pressing button "A".
## Topic
Break
## Quick Links
* [tutorial](/lessons/jailbreak/tutorial)
* [quiz](/lessons/jailbreak/quiz)
* [quiz answers](/lessons/jailbreak/quiz-answers)
* [challenges](/lessons/jailbreak/challenges)
## Class
Year 7
## Prior learning/place of lesson in scheme of work
Learn how to create a **break**, `break` to exit a while or for loop before the loop is complete. We will be learning how to create a break using global variables, Boolean, If (conditionals), a While Loop as well as simple commands, such as show string, plot image, show number, and pause.
## Documentation
* **Global Variable** : [read more...](/js/data)
* **Boolean** : [read more...](/reference/types/boolean)
* **On Button Pressed** : [read more...](/reference/input/on-button-pressed)
* **While Loop** : [read more...](/js/while)
* **Break** : [read more...](/js/break)
* **If (Conditional)** : [read more...](/reference/logic/if)
* **Show String** : [read more...](/reference/basic/show-string)
* **Plot Image ** : [read more...](/reference/led/plot-image)
* **Show Number** : [read more...](/reference/basic/show-number)
* **Pause** : [read more...](/reference/basic/pause)
## Objectives
* learn how to create global variables to store data so that you can use it later in your code, functions, and in nested code blocks
* learn how to use the variables to declare a new local Boolean variable that will have one of two possible values: true or false
* learn how to run code when an input button is pressed
* learn how to repeat code while a condition is true
* learn how to exit a while loop before the loop is complete
* learn how to conditionally run code depending on whether a condition is true or not
* learn how to show a string on the LED screen one character at a time
* learn how to turn on LED lights on the LED screen
* learn how to show a number on the LED screen, one digit at a time
* learn how to pause your code for the specified number of milliseconds
## Progression Pathways / Computational Thinking Framework
#### Algorithms
* Designs solutions (algorithms) that use repetition and two-way selection, ie if, then and else.(AL)
* Uses diagrams to express solutions.(AB)
* Uses logical reasoning to predict outputs, showing an awareness of inputs (AL)
* Recognises that different solutions exist for the same problem (AL) (AB) Understands that iteration is the repetition of a process such as a loop (AL)
* Recognises that different algorithms exist for the same problem (AL) (GE)
* Represents solutions using a structured notation (AL) (AB)
#### Programming & Development
* Creates programs that implement algorithms to achieve given goals (AL)
* Declares and assigns variables(AB)
* Uses post-tested loop e.g.until,and a sequence of selection statements in programs,including an if,then and else statement(AL)
* Understands the difference between, and appropriately uses if and if, then and else statements(AL)
* Uses a variable and relational operators within a loop to govern termination (AL) (GE)
* Uses a range of operators and expressions e.g. Boolean, and applies them in the context of program control. (AL)
* Selects the appropriate data types(AL) (AB
#### Data & Data Representation
* Performs more complex searches for information e.g. using Boolean and relational operators(AL) (GE) (EV)
* Defines data types: real numbers and Boolean (AB)
#### Hardware & Processing
* Knows that computers collect data from various input devices, including sensors and application software (AB)
#### Communication Networks
* Demonstrates responsible use of technologies and online services, and knows a range of ways to report concerns Understands how search engines rank search results (AL)
#### Information Technology
* Collects, organizes, and presents data and information in digital content (AB)
* Makes appropriate improvements to solutions based on feedback received, and can comment on the success of the solution (EV)
* Recognises ethical issues surrounding the application of information technology beyond school.
Computational Thinking Concept: AB = Abstraction; DE = Decomposition; AL = Algorithmic Thinking; EV = Evaluation; GE = Generalisation
## Activity
* time: 20 min.
* [tutorial](/lessons/jailbreak/tutorial)
* [quiz](/lessons/jailbreak/quiz)
## Extended Activity
* time: 20 min.
* [challenges](/lessons/jailbreak/challenges)
## Homework
* Extended Activity: [challenges](/lessons/jailbreak/challenges)