Lesson Notes By Weeks and Term v4 - SHS 1

APP DEVELOPMENT

Download the Lessonotes Mobile Ghana app for faster lesson access on Android and iPhone.

Subject: Computing

Class: SHS 1

Term: 2nd Term

Week: 13

Grade code: 1.2.2.LI.2

Strand code: 2

Sub-strand code: 2

Content standard code: 1.2.2.CS.1

Indicator code: 1.2.2.LI.2

Theme: COMPUTATIONAL THINKING (PROGRAMMING LOGIC)

Subtheme: APP DEVELOPMENT

Lesson Video

This page supports the lesson note with a companion video and a short classroom-ready summary.

For class groups and homework, share this lesson page so learners also get the summary, objectives, and full lesson context.

Performance objectives

Lesson summary

Welcome, future creators! Every app you use on your phone—from WhatsApp to MTN MoMo to your favourite game—was built by someone who first had an idea and then planned it out step-by-step. This process of planning is the foundation of all software and app development. Today, we will learn how to think like a programmer by taking a simple problem, creating a logical plan (an algorithm), and then translating that plan into a real computer program using Python. This skill is crucial because it teaches you how to solve problems logically, a skill valuable not just in computing, but in every aspect of life in Ghana and beyond.

Lesson notes

This section breaks down the core ideas we need to understand before we can build anything. A. The 5 Steps of Program Planning and Development

Creating a program is like building a house. You don't just start laying bricks; you need a detailed plan first. Here are the logical steps: Understand the Problem: What exactly do we need the program to do? What information do we need (input)? What should the result be (output)? If we don't understand the problem, we can't solve it. *Example:* A program to calculate a student's BECE aggregate. Input: The grades for each subject. Output: The total aggregate score. Plan the Logic (Create an Algorithm): This is the most important step. We write down the step-by-step instructions the computer will follow. This plan is called an algorithm. We can write this plan in two main ways: Pseudocode and Flowcharts. Write the Code (Implementation): We translate our plan (the algorithm) into a language the computer understands, like Python. This is called coding or programming. Test and Debug: We run the program to see if it works correctly. If it produces errors or wrong results, we find the mistakes (called "bugs") and fix them (a process called "debugging"). Deploy and Maintain: Once the program is working perfectly, it is made available for people to use. Over time, it may need updates or improvements (maintenance).

For today, we will focus on steps 1, 2, and 3. B. What is an Algorithm?

An algorithm is a finite, step-by-step set of instructions designed to perform a specific task or solve a problem. Think of it as a recipe. To make `gari soakings`, you follow a recipe: Get a bowl. Pour some gari into the bowl. Add sugar. Add water and stir. Add milk and groundnuts. If you miss a step or do them in the wrong order, you won't get the correct result. Computers are the same; they need precise instructions in the correct order. C. Tools for Planning Algorithms: Pseudocode and Flowcharts Pseudocode: Meaning: "Pseudo" means fake. So, pseudocode is "fake code." Purpose: It's a way of writing out your algorithm in a structured, English-like way that is easy for humans to read but is not an actual programming language. It helps you focus on the logic without worrying about the strict rules (syntax) of a language like Python. Example (Algorithm to find the sum of two numbers): ``` START DISPLAY "Enter the first number" GET firstNumber DISPLAY "Enter the second number" GET secondNumber sum = firstNumber + secondNumber DISPLAY "The sum is: " + sum END ``` Flowchart: Meaning: A flowchart is a diagram that visually represents the steps and flow of an algorithm. Purpose: It uses standard symbols to show the sequence of operations, making the logic easy to follow. Common Flowchart Symbols: Oval (Terminator): Represents the START and END of the program. Parallelogram (Input/Output): Represents getting input from a user or displaying output. Rectangle (Process): Represents a calculation or an action (e.g., `sum = a + b`). Arrows (Flow Lines): Show the direction and order of the steps. Example (Flowchart to find the sum of two numbers): ``` +-----------+ | START | +-----------+ | V +-----------------------+ | GET firstNumber, | | secondNumber | +-----------------------+ | V +-----------------------+ | sum = firstNumber + | | secondNumber | +-----------------------+ | V +-----------------------+ | DISPLAY sum | +-----------------------+ | V +-----------+ | END | +-----------+ ``` D. Introduction to Python: Variables and Data Types

Evaluation guide