
2.3. Algorithm Basics¶
This lesson focuses on the concepts of algorithms and programming, which is one of the course's big ideas. As one of the many lessons in the course on algorithms, it begins by providing a definition and introducing some of the fundamental building blocks that are used to construct algorithms. They will use the three fundamental constructs for building algorithms: sequence, a sequence of statements; selection, a branching between two alternative statements; and repetition, a loop that repeats statements. Students will evaluate and write algorithms using pseudocode, which is part of the AP Exam, and make connections to App Inventor. This lesson reinforces the enduring understanding that algorithms are precise sequences of instructions for processes that can be executed by a computer and are implemented using programming languages. Also, in this lesson students will complete a group work activity using the POGIL structure. (POGIL stands for Process-Oriented Guided Inquiry Learning; more information is provided in the background knowledge and teaching tips sections below and in the pedagogy lesson in Unit 10.)
CSP Framework | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
![]() | |||||||||||||||||||||||||||||||||||||||||
Enduring Understanding AAP-2: The way statements are sequenced and combined in a program determines the computed result. Programs incorporate iteration and selection constructs to represent repetition and make decisions to handle varied input values. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.A: Express an algorithm that uses sequencing without using a programming language. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.B: Represent a step-by-step algorithmic process using sequential code statements. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.E.a: For relationships between two variables, expressions, or values: a. Write expressions using relational operators. Learning Objective AAP-2.E.b: For relationships between two variables, expressions, or values: b. Evaluate expressions that use relational operators. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.G: Express an algorithm that uses selection without using a programming language. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.H.a: For selection: a. Write conditional statements. Learning Objective AAP-2.H.b: For selection: b. Determine the result of conditional statements. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.J: Express an algorithm that uses iteration without using a programming language. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.K.a: For iteration: a. Write iteration statements. Learning Objective AAP-2.K.b: For iteration: b. Determine the result or side-effect of iteration statements. | |||||||||||||||||||||||||||||||||||||||||
Learning Objective AAP-2.M.a: For algorithms: a. Create algorithms. Learning Objective AAP-2.M.b: For algorithms: b. Combine and modify existing algorithms. | |||||||||||||||||||||||||||||||||||||||||
Professional Development
The Student Lesson: Complete the activities for Mobile CSP Unit 2 Lesson 2.3: Algorithm Basics.
Materials
- Projection System
- Slides
- POGIL role cards
- Worksheet for POGIL Activity
2.3.1. Learning Activities¶
Estimated Length: 45 minutes
- Hook/Motivation (5 minutes): Ask the students to define what an algorithm is. Explanation: Provide the definition of an algorithm: An algorithm is a sequence of precise instructions, a step-by-step procedure, that solves some problem or does some computation. Next, review the Blockly Maze activity as needed, emphasizing that there are multiple solutions to the problems, but that some may be more efficient than others as well as reinforcing the concepts of sequence, selection and repetition types of control structures.
- Experiences and Explorations (30 minutes):
- Lecture (10 minutes): Use the slide presentation to provide an overview of algorithms to the students
- POGIL Roles and Teams (5 minutes): Divide students into groups of 3-4 teams. Review the POGIL structure and roles with the students, having groups assign each member a role. Since this is the first time using the POGIL format, you might find it useful to distribute the POGIL role cards to the groups. Be sure to emphasize that POGIL has been shown to help students learn the concepts better and that most students prefer this format.
- POGIL Activity (15 minutes) In the POGIL teams, students should work through the critical thinking questions. Make sure that they identify the complete repetition and selection structures, not just the first line of each. The answers to the POGIL questions are in the Assessment section below. Look ahead at the answers to anticipate questions you may be asked.
- Rethink, Reflect and/or Revise (10 minutes): Have the students complete the interactive questions and their portfolio reflection.
2.3.2. Professional Development Reflection¶
Discuss the following questions with other teachers in your professional development program.
- How do the lesson activities reinforce the idea that algorithms are precise sequences of instructions that can be executed on a computer?
- In this course we will building and analyzing algorithms throughout our study of computer science. Is there anything else you would need to have or know to teach this lesson effectively? What specific elements of this lesson (examples, activities, etc.) would you change? How would you modify or add to the interactive exercises (formative assessments)?
- How does the use of POGIL reinforce the computational thinking practices of communication and collaboration?
-
I am confident I can teach this lesson to my students.
- 1. Strongly Agree
- 2. Agree
- 3. Neutral
- 4. Disagree
- 5. Strongly Disagree