Computer Science - 4CP0 PearsonEdexcel

Subprograms

Overview

A long program that repeats the same block of code in five different places is fragile: fix a bug in one copy and the other four still carry it. Subprograms solve this by giving a named, reusable block of code a single home, one that any part of the program can call on whenever it is needed.

In this lesson you will learn the difference between procedures and functions, how to pass data into a subprogram using parameters and get data back out using a return value, and how local and global scope decide which parts of a program can see which variables. Every example is written in Python, one of the languages you can use for the Paper 2 practical programming exam.

Objectives

  1. Understand the benefits of using subprograms and be able to write code that uses user-written and pre-existing (built-in, library) subprograms
  2. Understand the concept of passing data into and out of subprograms (procedures, functions)
  3. Be able to create subprograms that use parameters

Lesson Note

A subprogram is a named, self-contained block of code that carries out a specific task and can be run, or 'called', from anywhere else in the program. Instead of writing the same lines of code repeatedly, a programmer writes them once inside a subprogram and calls that subprogram every time the task is needed.

Available on the Green Bridge App

Download the Green Bridge CBT app on your phone or computer to access full lesson notes, practice questions, and more.

Full lesson notes with diagrams
AI-powered learning assistant
Study offline, anytime, anywhere
Available on Android, Windows, macOS, and Linux

Lesson Evaluation

Congratulations on completing the lesson on Subprograms. Now that youve explored the key concepts and ideas, its time to put your knowledge to the test. This section offers a variety of practice questions designed to reinforce your understanding and help you gauge your grasp of the material.

You will encounter a mix of question types, including multiple-choice questions, short answer questions, and essay questions. Each question is thoughtfully crafted to assess different aspects of your knowledge and critical thinking skills.

Use this evaluation section as an opportunity to reinforce your understanding of the topic and to identify any areas where you may need additional study. Don't be discouraged by any challenges you encounter; instead, view them as opportunities for growth and improvement.

  1. Which keyword does a Python subprogram use to send a value back to the code that called it? A) global B) def C) return D) import Answer: C
  2. In def add(a, b): return a + b, what are a and b called? A) Arguments B) Parameters C) Return values D) Global variables Answer: B
  3. Which of these best describes a procedure? A) A subprogram that always returns a numeric value B) A subprogram that carries out a task but does not return a value C) A subprogram that can only be called once D) A built-in Python keyword Answer: B
  4. A variable is created inside a function using an assignment statement and is never declared global. What is its scope? A) It is global and can be read anywhere B) It is local to that function only C) It exists for the whole program but only after the function is called D) It has no scope in Python Answer: B
  5. Which statement must appear inside a subprogram before it can change the value of a variable defined outside every subprogram? A) local B) return C) global D) import Answer: C

Available on the Green Bridge App

Download the Green Bridge CBT app on your phone or computer to access full lesson notes, practice questions, and more.

Full lesson notes with diagrams
AI-powered learning assistant
Study offline, anytime, anywhere
Available on Android, Windows, macOS, and Linux

Available on the Green Bridge App

Download the Green Bridge CBT app on your phone or computer to access full lesson notes, practice questions, and more.

Full lesson notes with diagrams
AI-powered learning assistant
Study offline, anytime, anywhere
Available on Android, Windows, macOS, and Linux

Practice Mock Questions

Want to practice mock questions on Subprograms? Download the Green Bridge CBT app to access mock questions and full practice assessments for this topic.

Download The App On Google Playstore

Everything you need to excel in your exams

Green Bridge CBT Mobile App
Personalized AI Learning Chat Assistant
200,000+ Past Papers Across IGCSE, JAMB, WAEC & NECO
Over 3000 Lesson Notes
Offline Support - Learn Anytime, Anywhere
Green Bridge Timetable
Literature Summaries & Potential Questions
Track Your Performance & Progress
In-depth Explanations for Comprehensive Learning