1. Resources Home
  2. Whole School
  3. Computing
  4. Computational thinking
  5. Algorithmic thinking
Linear search:  Lesson plan  & resources

Linear search: Lesson plan & resources

LINEAR SEARCH: LESSON PLAN & RESOURCES (x10) (GCSE / A Level Computer Science) • To understand and explain how a linear search works An easy to follow and timed lesson plan (x1 hour) that includes x10 resources. Starter activity where pupils line up and hold numbers up to simulate a linear search. A linear search presentation that introduces and explains the search algorithm with supporting examples given in python Three linear search programs written in python, demonstrating a linear search (basic), a linear search (when data item not found) and a linear search (when more than one item you are looking for is found) Pupils view a simulation of a linear search (Internet link provided) A worksheet of six questions and answers on the linear search. A stretch and challenge exercise to program a linear search that counts the number of search terms if there is more than one search term. A plenary exercise to read through an account of visiting a games store and searching for a particular game. The parts of the account that are in error have to be highlighted in red. A research homework exercise and answers about the linear search (x3 questions)
Teacher_aesg
Entity Relationship Diagrams (ERD)

Entity Relationship Diagrams (ERD)

The presentation introduces the idea of data redundancy (repeating data) inside tables. It shows using clear diagrams how to avoid this by splitting a table into two separate tables and introducing a one to many relationship between these two tables. It goes onto show how to represent ‘many to many’ relationships using two ‘one to many’ relationships, before defining the two important keys; primary and foreign key. There is a word document worksheet where the pupils have to describe the relationships between entities.
Teacher_aesg
Database terminology

Database terminology

The presentation introduces the terms database, relationship, table, records, fields and data items to explain the structure of a database. It gives visual examples of these terms and relates them to a database hierarchy. It explains the different degrees of relationships and asks a question to label a table database structure. The resource also includes a follow on worksheet where the pupils drag and drop database definitions alongside each one of the database terms.
Teacher_aesg
SCRATCH - making a game stage 2

SCRATCH - making a game stage 2

This PowerPoint has video descriptions of how to add features to a simple driving or maze navigation game. I used it with year 3 and made this to help the teachers who were not confident or familiar with SCRATCH themselves. They were able to play the pages and then get the children designing, making, innovating and debugging their games. It is a large file, so allow time for it to download.
NickAHutson
Kodu-Rythm Lesson 2(An Introduction to coding using Kodu)

Kodu-Rythm Lesson 2(An Introduction to coding using Kodu)

Kodu is a friendly graphical programming language where students can build their own world and program objects within. This series of lesson uses kodu to introduce computer science terminology such as algorithm and variables to develop computational thinking skills.
chris_vidal
Kodu-Rythm Lesson 1(An Introduction to coding using Kodu)

Kodu-Rythm Lesson 1(An Introduction to coding using Kodu)

Kodu is a friendly graphical programming language where students can build their own world and program objects within. This series of lesson uses kodu to introduce computer science terminology such as algorithm and variables to develop computational thinking skills.
chris_vidal
Introduction to algorithms

Introduction to algorithms

A gentle and friendly introduction to algorithms with a simple worksheet to enable students to develop computational thinking. Understanding how algorithms work and how they are used by computers is fundamental to achieving success in GCSE computer science. This lesson introduces KS2 and KS3 students to algorithms. This lesson could be used alongside the algorithms in scratch series.
chris_vidal
Validation rules presentation

Validation rules presentation

The presentation introduces x7 validation rules; range check, type check, presence check, length check, lookup check, picture check and check digit check. Each one of the descriptions is supported with an example written in python and these have been uploaded as separate text files as part of the resource.
Teacher_aesg
Data flow diagram presentation

Data flow diagram presentation

A presentation that introduces the different data flow diagram symbols, one by one and explains how a data flow diagram can be constructed from a table. An example of a data flow diagram is given followed a challenge exercise.
Teacher_aesg
Reverse Polish Notation presentation

Reverse Polish Notation presentation

The presentation introduces Reverse Polish Notation (postfix notation) and compares it to infix / prefix notation. There are examples of these different notations and then a closer look at how to convert expressions between postfix to infix and vice versa. A more detailed example demonstrates how a stack is used to temporarily manipulate values to evaluate the expression. Finally uses of RPN are given at the end of the presentation.
Teacher_aesg
Reverse Polish Notation (RPN) questions and answers

Reverse Polish Notation (RPN) questions and answers

The word document presents five questions asking for a translation from ‘infix’ to ‘postfix’ and five questions from ‘postfix’ to ‘infix’ notation. There is a question asking to convert a postfix expression into a binary tree and then requiring a traversal of the binary tree using preorder, post order and inorder traversal. There is a question asking about the purpose of RPN and another question asking why humans use infix notation and computers sometimes use postfix notation (x6 questions sub divided into sections)
Teacher_aesg
Object orientated programming (OOP)

Object orientated programming (OOP)

The presentation introduces the idea of properties and methods belonging to a class, being able to instantiate a class and produce an object and how many objects can be created from the class. The presentation describes the OOP characteristics behind inheritance, encapsulation and polymorphism. It gives six supporting examples using python code to demonstrate the above concepts. At the end of the presentation there is a challenge to create a program to illustrate the new ideas. This is supported by a class diagram that displays the relationship between the classes.
Teacher_aesg
Recursion programming technique

Recursion programming technique

A presentation that describes what recursion is, uses two pseudo code examples (eg sum numbers and factorial) to illustrate the programming technique, including the importance of using a base condition and the result if no condition is used. There are a series of programming challenges at the end of the presentation.
Teacher_aesg
Caesar Cipher Python Program (KS3 resource)

Caesar Cipher Python Program (KS3 resource)

This was programmed by me as a teaching aid to allow Year 9 pupils to see both how the Caesar Cipher works and to link it directly to programming and computational thinking. It can be used to have students identify the algorithm, use of items such as strings and lists and other variables as well as procedural programming and as an example of the practical use of Tkinter to code the graphical user interface. Another activity is to have pupils comment the program and to explain the job carried out by each procedure. Sensible names are used throughout the code for ease of tracing and to make it more easily understood. Code also contains some comments. Please note: on download rename the caesar1.txt file to caesar1.py and keep the gif file in the same file directory as the program file for the image of Julius Caesar to appear in the program.
Carl67
KS3 Computing - Cryptography Unit of Work - Lesson Presentations, Worksheets and Assessment

KS3 Computing - Cryptography Unit of Work - Lesson Presentations, Worksheets and Assessment

This is a whole unit of work that this aimed at KS3 - it covers all aspects of Cryptography that the students have absolutely loved doing and this has been uploaded to Google Classroom and made the whole unit very interactive. The work is split into Flight Paths and contains an assessment. All work has stretch and challenge extension tasks too. This is a really enjoyable unit of work for about 6 weeks.
cheekieclaire
Python Calculator - Using Subroutines

Python Calculator - Using Subroutines

This is a full lesson which teaches students how to create a simple calculator program in Python using subroutines. Help code is provided with each task for weaker students Task solutions are also included on the PPT The full working code is attached as a text file Extension tasks are included for the more able This is best taught after an introduction to subroutines.
jan3333
SCRATCH -how to make a game, step by step

SCRATCH -how to make a game, step by step

A PowerPoint with step by step videos introducing a class (and teacher?) to the stages of making a very simple driving game. It was made to help teachers who are not confident about introducing SCRATCH coding to a class. Load and play a step at a time. It’s quite a big file so be patient. Also available, with planning etc from http:bit.ly/sjsresources
NickAHutson
Pseudo Code - Array and Multidimensional Array

Pseudo Code - Array and Multidimensional Array

This is a powerpoint which you can get part of a pack. It teaches you how to do a multidimensional array and shows examples of how they can be used to work out the range. Hope that it is useful to some other teachers.
r_chambers
OCR - 9-1 - Computer Pseudo worksheet questions

OCR - 9-1 - Computer Pseudo worksheet questions

This work sheet is a number of questions including extension activities that will get students to program pseudocode on paper. The first part of the work sheet includes some basic questions as well as some answers on an answer sheet. It should be some good practice for the basics of pseudo code. The extension questinos are more complicated and should be done on a separate sheet or work book as practice for the students.
r_chambers
Algorithms & Flow charts Lesson

Algorithms & Flow charts Lesson

This lesson is aimed at Key Stage 3/4 and explains algorithms, has activities on flow charts, teaches pupils the flow chart symbols and contains a main task on creating a flow chart algorithm.
ahandford77
Teach yourself the ENTIRE AQA GCSE Computer Science specification

Teach yourself the ENTIRE AQA GCSE Computer Science specification

Detailed student workbooks that EXACTLY match the AQA GCE (9-1) Computer Science (8520) specification. Each includes theory, tasks to recap the knowledge and put their new skills into practice and the answers. Perfect for NQTs, non-specialist teachers or teachers who feel a little unsure about the qualification content and want to improve their subject knowledge. Also ideal to use as a revision aid for students. Provided as seven separate PDF documents: • Fundamentals of algorithms • Programming • Fundamentals of data representation • Computer systems • Fundamentals of computer networks • Fundamentals of cyber security • Ethical, legal and environmental impacts of digital technology on wider society, including issues of privacy These are ideal to use in the classroom, as homework tasks or for independent study as revision for the examinations.
nwilkin
Computer Science: Programming with pseudocode and Python AQA (9-1) GCSE

Computer Science: Programming with pseudocode and Python AQA (9-1) GCSE

Great for AQA (9-1) GCSE Computer Science revision and help with the programming project. This workbook covers the AQA GCSE Computer Science (8520) specification section 3.2 “Programming”. It includes a 116-page PDF document including theory, tasks and includes all the answers. Whenever possible pseudocode is shown alongside the Python code to allow students to compare the similarities and differences between them. Perfect for NQTs, non-specialist teachers or teachers who feel a little unsure about the qualification content and want to improve their subject knowledge. Also ideal as a teaching resource and covers programming in Python from the basics to more advanced techniques including writing to text files, 2D arrays and using subroutines. It also gives help on planning robust programs and testing programs along with the difference between an interpreter, a compiler and an assembler. Table of contents: Data types Variables and constants Iteration Selection Subroutines (procedures and functions Global and local variables Operators One-dimensional arrays Two-dimensional arrays Input and Output Reading from and writing to a text file String handling operations Random number generation Structuring programming Robust and secure programming Data Validation Creating a simple authentication routine Testing your programs Low-level and high-level languages Translators Other workbooks in this series: * Fundamentals of Algorithms GCSE revision student workbook Fundamentals of Data Representation GCSE revision student workbook * Computer Systems GCSE revision student workbook Fundamentals of Computer Networks GCSE revision student workbook Cyber Security GCSE revision student workbook Ethical, legal and environmental impacts
nwilkin
GCSE Computer Science 9 x Module Quizzes - Great for exam revision, consolidation, assessment or homework

GCSE Computer Science 9 x Module Quizzes - Great for exam revision, consolidation, assessment or homework

This is a collection of my module quizzes - a series of exam style questions and key knowledge/skill checks for each of the main Computer Science topic. Questions are applicable to all exam boards including AQA and OCR. All module quizzes come with full answers provided. I print these 2 to a page and use them both for end of topic assessments for current year 10, and exam revision for year 11.
MrWatkins123
Python Programming Challenge - Creating a Strong Password, With clues, Extension Task

Python Programming Challenge - Creating a Strong Password, With clues, Extension Task

A python programming challenge where students are expected to write a program that checks if a password is considered to be strong. The password must be greater than a certain length, include numbers, symbols, upper & lower case letters, not contain certain words or number pattens. The booklet includes: A tick sheet for when students have managed a certain task A test plan to check that certain passwords are ‘strong’ or not Some useful snipits of python code that will assist the students. An extension task. Good practice for string manipulation. Depending on your group ability, this could be a 1 or 2 lesson activity.
moggga
Computational Thinking Knowledge Organiser GCSE OCR Computer Science J276

Computational Thinking Knowledge Organiser GCSE OCR Computer Science J276

My current year 11 students have been extremely positive about the Knowledge Organisers that I have created for their Computer Science revision (and students in previous years on the legacy spec). This resource covers the terminology involved in Computational Thinking along with an explanation of pseudocode and flow charts with several examples using sequence, selection and iteration. It also cover sub-programs and shows the difference between procedures and functions with examples of each. This covers the new J276 OCR specification for GCSE Computer Science. Please do leave feedback if possible, I hope you find it useful.
Raych6000
Sequencing skills using iPads

Sequencing skills using iPads

This resource is aimed at teachers using iPads with students to provide ideas and inspiration for iPad activities in class. It’s suitable for all levels of teaching experience and digital skill, from new starters to experienced digital leaders. It can also be used as a general CPD resource for developing teaching skills, as the ideas suggested are not reliant on digital devices. Sequencing is an important thinking skill for students to develop. The first page of the resource provides the rationale for sequencing as a teaching concept and ideas to try out with suggested apps, along with differentiated levels of challenge for students to practise this skill. We’ve linked iOS apps but the ideas are adaptable to non-iOS / BYOD digital classrooms too. The second page provides some subject-specific ideas for lesson activities (our apologies if we’ve missed out your subject area!). We hope you’ll find some iPad teaching & learning inspiration here! About us: we’re developing a classroom app, Sparkjar, for use in iPad schools. We’ve made these free resources because we want to give something back to teachers whilst we raise the profile of Sparkjar. We hope you find them useful as part of your iPad teaching toolkit. There’s a link to our website in the resource - if you want to check us out, please do.
Sparkjarapp
Poster: Blooms Taxonomy and Computational Thinking

Poster: Blooms Taxonomy and Computational Thinking

Use Blooms Taxonomy thinking skills to incorporate Computational Thinking Concepts within your lessons. This poster cross references Blooms Taxonomy thinking skills with the concepts of Computational Thinking in order to support your delivery of these concepts within the classroom. Suitability ratings are also provided in order to identify how computational thinking concepts can be linked to their relative thinking skills. ***Please leave a review!
RobbotResources
4 Programming Lessons Pack for Python

4 Programming Lessons Pack for Python

Four lessons: Variables, Selection, Iteration and Functions. Includes 2 worksheets for lessons 2 and 3. Full lessons, starters, activities, plenaries etc, differentiated and include screen shot answers for each python programming activity.
ahandford77
Starter - Pseudo Code Python programming

Starter - Pseudo Code Python programming

A fun starter for pupils to learn and practise Pseudo code and prepare pupils for coding in python or in other programming languages. The worksheet helps pupils create a pseudo code with a fun pirate adventure that includes various programming key words. Two files: one file is a pupil file ready to print (A4) and one file for the teacher with a suggested answer for differentiation.
ahandford77
Insertion Sort and Merge Sort Self-Marking Questions

Insertion Sort and Merge Sort Self-Marking Questions

Designed for GCSE/A-Level students who are taking computer science. Helpful also for A-Level maths students. It is a self-marking excel sheet that will test students on insertion sort and merge sort, giving them an outline for how to write the answers to such questions in exams. In the top left corner there is a cell to input a number, by inputting this number, it will change the values in the insertion/merge sort question.
franksybex
Cosmopolitan Coding - Fun INSET Introduction to Coding

Cosmopolitan Coding - Fun INSET Introduction to Coding

Many teachers were never taught the coding and computer science elements of the new curriculum themselves. This introductory activity helps teachers understand the simplicity of using algorithms as instructions to complete tasks. Teachers will learn: Algorithms and how these are simple instructions Syntax and how this is simply known action in new language Problem solving and debugging code Testing code to see if it works Teachers love this INSET introduction!
EuphoricEd
Programming Paradigms

Programming Paradigms

This presentation gives example code and show class diagrams. It teachers students about: Procedural Object-Oriented Declarative Students are also explained to and taught about: - Inheritance Polymorphism Constructors Inheritance Advantages
r_chambers
Big O Notation - Computer Science - OCR A-Level

Big O Notation - Computer Science - OCR A-Level

A Powerpoint presentation explaining Big O Notation. There are some examples of code and some graphs which help students visualise what is meant by exponential and the complexity of algorithms. This was useful to my year 13 students and hopefully it will help yours.
r_chambers
KS3 Computational Thinking Project - Practical Problem Solving (Full Unit of Work)

KS3 Computational Thinking Project - Practical Problem Solving (Full Unit of Work)

**KS3 Computational Thinking Project - Practical Problem Solving (Full Unit of Work) ** This project is designed to either introduce computational thinking skills or to supplement and build on knowledge and skills already acquired. It is suggested that the student booklet is used in conjunction with the associated presentation through all of the lessons. The project has been designed so that is hands-on and practical. The suggested time frame from start to finish of the project is approximately 6-8 lessons, depending on what additional aspects the teacher wishes to introduce during the project. Students are asked to create a stationery holder using everyday objects. The problem has to be approached and solved using computational thinking skills. The project can be approached from a totally ‘unplugged’ pedagogy. No computers required! The resource consists of: a) A student booklet. This can be printed as an A4 or A5 booklet. b) A student booklet containing examplar responses. Also contains extension / homework tasks. c) A PowerPoint presentation for use in lessons to guide students and the teacher. Many of the slides have accompanying ‘speaker notes’ with ideas and suggestions for lessons.
conxxion
GCSE Computing Revision: Algorithms

GCSE Computing Revision: Algorithms

Handy revision sheet that summarises the topic of Algorithms. The focus is on the AQA 8520 (9 - 1) and gives an overview of the term algorithm, decomposition and abstraction. There is a summary of flowcharts and the symbols. There is a summary of searching algorithms with comparisons of linear and binary. Sorting algorithms are covered and bubble sort and merge sort are compared
chrdol72
Computer Science Poster: how to read and write pseudo code

Computer Science Poster: how to read and write pseudo code

This handy poster is a great revision tool to help your GCSE computer scientists prepare for their computational thinking problem solving paper! Although focused around AQA specification, it is also easily applicable for others. This poster will help your students to both understand what the pseudo code means within exams as well as help them write their own, well structured pseudo code. Update: High Resolution 1440x2560 in both PNG & JPEG Please leave a review
RobbotResources
Algorithms - Learning Tasks: Classroom or Homework Resources

Algorithms - Learning Tasks: Classroom or Homework Resources

The resources can be used as a set of differentiated algorithm resources or as homeworks to compliment lesson activities: The resources covers aspects of computational thinking, including: Algorithms Pseudo Code Flowcharts Sequencing Decomposition Abstraction Decisions and Repetition Tasks can be completed in any order and are differentiated. The resource contains pages covering: My rewards My progress Notes Teacher feedback
conxxion
Computing Design/Algorithm pro-formas (PDF and editable Word docx)

Computing Design/Algorithm pro-formas (PDF and editable Word docx)

As described in my “Delve in, for twelve min!” video CPD, these are example pro-formas to give pupils to design their computing projects. These could be Scratch projects; animations, games, quizzes etc. The design process, which is largely missed in computing, forms an essential part of a coding project, and also provides many benefits in terms of AFL. Please use in conjunction with the training video, and also check out the entire “Delve in, for twelve min!” series: https://www.youtube.com/playlist?list=PL3kA-gpaSB2a6Vfdq04rGt5xcKQg8FG8x
PhilWickins
OCR J276 Computer Science Paper 2 Revision - Knowledge Organisers

OCR J276 Computer Science Paper 2 Revision - Knowledge Organisers

The new OCR Computer Science 9-1 GCSE specification (J276) has a lot of new knowledge for the students to learn. I have created these knowledge organisers for my Year 11 Computer Science students. I have tried to make them as compact as possible - trying to fit the entire topic onto one side of A4 (two at most). The students used them for their Paper 2 mock exam in December. The feedback was really positive - they found them really helpful to recap the topic and have now also seen how they can be used to help answer the exam questions. As you can probably guess they have taken me many hours to put together and I have been improving them, and correcting them as I have been using them and working with the practice questions to make them as useful as possible. This is the first time I have sold anything on TES, I have found the new spec pretty daunting - so I do hope these can help a few people. Please do give me any feedback if you think there is anything missing and I will make any necessary changes. Thanks Rachel
Raych6000