GCSE Computer Science Textbook sample

AQA

GCSE

COmpuTEr SCIEnCE

Steve Cushing

SAmpLE CHApTErS

Meet the demands of the new GCSE specification with print and digital resources to support your planning, teaching and assessment needs alongside specialist-led CPD events to help inspire and create confidence in the classroom.

The following Student Book has been selected for AQA's official approval process:

AQA GCSE Computer Science

AQA GCSE Computer Science Student Book

9781471866197 April 2016 AQA GCSE Computer Science Student Book

?19.99

AQA GCSE Computer Science has been selected for the AQA approval process.

Visit hoddereducation.co.uk/GCSEComputerScience/AQA to pre-order BuildyourconfidenceandensureclearprogressthroughGCSEComputer Science. Experienced author Steve Cushing provides insight and guidance so you can meet the demands of the new AQA specification, with challenging tasks and activities to test the computational skills and knowledge you require for completing the exams and the non-examined assessment.

your class sets or to sign up for your Inspection Copies or eInspection Copies. l Buildyourknowledgeandconfidencethroughdetailedtopiccoverageand explanation of key terms l Develop computational thinking skills with practice exercises and problem-solving tasks l Acquire a deeper understanding and awareness of computer science, and its applications and implications in the wider world l Assess your progress through GCSE with regular tasks, questions and chapter reviews

Authors: Steve Cushing is a well-respected and widely published author for secondary Computing, with examining experience.

Visit hoddereducation.co.uk/GCSEComputerScience/AQA for more information on resources for AQA GCSE Computer Science.

Textbook subject to ALSoAVAiLABLE

Dynamic Learning

Dynamic Learning

AQA GCSE Computer Science Dynamic Learning is an online

change based subscription solution that supports teachers and students with high

quality content and unique tools. Dynamic Learning incorporates Teaching and Learning resources, Question Practice, Whiteboard and Student eTextbook elements that all work together to give you the ultimate classroom and homework resource.

on

Ofqual feedback. Sign up for a free trial ? visit: hoddereducation.co.uk/dynamiclearning

Steve Cushing

AQA

GCSE

ComputEr SCiEnCE

Steve Cushing

Contents

1 Computational Thinking

3

Decomposition

4

Abstraction

4

What is an algorithm?

8

The input?process?output model

9

Decomposition and sequences

11

Chapter review

15

2 Using flowcharts

16

Basic elements of flowcharts

19

Chapter review

25

3 Using pseudo-code

26

Pseudo-code

26

The importance of syntax

27

Commenting on your code

29

Adding selection

30

Chapter review

31

The Publishers would like to thank the following for permission to reproduce copyright material:

Photo credits p. 6 t ? TfL from the London Transport Museum collection, b ? TfL from the London Transport Museum collection

Every effort has been made to trace all copyright holders, but if any have been inadvertently overlooked the Publishers will be pleased to make the necessary arrangements at the first opportunity.

Although every effort has been made to ensure that website addresses are correct at time of going to press, Hodder Education cannot be held responsible for the content of any website mentioned. It is sometimes possible to find a relocated web page by typing in the address of the home page for a website in the URL window of your browser.

1 Computational Thinking

Key Point

Computational thinking involves applying a set of problem-solving skills and techniques that are used by computer programmers to write programs.

Key terms

Problem-solving skills and techniques refer to the designing of systems, and understanding concepts such as decomposition and abstraction which are fundamental to computer science.

Output is anything that a computer produces.

Logical reasoning is the process or method of using a rational and systematic approach to solving a problem. It will often be based on mathematical assumptions and procedures.

Before you can succeed in computer science you must learn about what is called `computational thinking'. Computational thinking involves applying a set of problem-solving skills and techniques that are used by computer programmers to write programs. Computational thinking is not thinking about computers or even thinking like a computer. Computers don't think for themselves. If you give ten computers the same instructions and the same input, they will give exactly the same output. Computers are predictable.

Computer scientists use logical reasoning to work out exactly what a program or computer will do. Computational thinking involves thinking about a problem in a logical way, and enabling a computer to solve it. This logical reasoning is the essential building block of computer science, so first we need to fully understand the techniques involved and how we start with a problem and end up with the programming code.

3

1 Computational Thinking

Key terms

Decomposition is breaking any given task or problem into simple logical steps or parts.

Abstraction is the process of taking away or removing irrelevant characteristics. In terms of solving a problem, this would mean removing irrelevant characteristics in order to reduce it to something that is simpler to understand. In computer science, abstraction is often used for managing the complexity of computer systems.

Two important techniques used in computational thinking are:

? Decomposition: This is breaking any given task or problem

into simple logical steps or parts.

? Abstraction: This is the process of taking away or removing

characteristics from something in order to reduce it to

something simpler to understand. In computer science,

abstraction is often used for managing the complexity of

computer systems.

We will explore each of these in detail later in the book but let's start with a simple example of decomposition and abstraction as it relates to problem solving.

Decompostition

The Problem

Abstract

Key Point

Decomposition means breaking a problem into a number of sub-problems, so that each sub-problem accomplishes an identifiable task, which might itself be further subdivided.

Approach to part of the problem

Approach to part of the problem

Approach to part of the problem

Speci c steps

Speci c Speci c

steps

steps

Speci c steps

The algorithm Figure 1.1 Decomposition and Abstraction

Par ticular

Key Point Decomposition is a term used for the separation of a task into discernible parts, each of which is simpler than the whole.

4

Decomposition

When a chef writes a recipe for a meal, that chef is creating a set of instructions that others can then follow to replicate the meal. Each part of the recipe is listed separately. The overall meal is decomposed into separate dishes, and these are often decomposed further for example, making the pastry and the filling.

Abstraction

You may have come across the term `Abstract Art', where a painting is a set of shapes representing the scene. A good example of the use of abstraction for technical purposes is the London tube map. It is the brainchild of an electrical draughtsman named Harry Beck.

AQA GCSE Computer Science Rather than emphasising the real distances and geographical location of all the tube lines, Beck stripped away the sprawling tube network by abstracting just the information needed by travellers. He then used this to create an easy to read diagram of coloured, criss-crossing lines common in electrical diagrams.

Key Point In abstraction we remove unnecessary details from a problem until the problem is represented in a way that is possible to solve.

Figure 1.2 A geographical map of the London underground stations

Figure 1.3 An original abstracted map of the London underground 5

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download