Source: https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-1-variable-declaration-and-assignment

[Revision notes](https://senecalearning.com/en-gb/revision-notes.md) › [GCSE](https://senecalearning.com/en-gb/revision-notes/gcse.md) › [Computer Science](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science.md) › [OCR](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr.md) › Variable Declaration & Assignment

# Variable Declaration & Assignment

Computer Science: OCR GCSE, topic 2.2.1

## Variable Declaration and Assignment

A variable must be declared before a value can be assigned.

### Declaration

![Declaration](https://image-v2.cdn.app.senecalearning.com/2018-08/a66a8e65-8566-4b75-ba0f-09c1dca1b8bc/business-man-computer-.jpg)

- Before variables can be used, they must be declared.
- Declaring a variable means telling the computer:
 - What the identifier (name) should be.
 - What type of data will be stored.

### Assignment

![Assignment](https://image-v2.cdn.app.senecalearning.com/2018-08/c4d11290-63ac-4a06-bece-696746852048/arrow-2085195_960_720.png)

- Changing the value stored inside a variable is called assignment.
- The value assigned to a variable must match the data type of the variable.

### Language specifics

![Language specifics](https://image-v2.cdn.app.senecalearning.com/courseImages/biology/OCR%20Gateway/5.1.5/coding%20.jpg)

- Some languages don’t need you to declare variables before you use them:
 - These languages automatically declare the variable before the first assignment.

## Test yourself on Variable Declaration & Assignment

- All languages require variables to be explicitly declared. True or false?
- What is important to check when assigning a value to a variable?

[Practise this topic for free](https://app.senecalearning.com/classroom/course/a1ce4570-6e27-11e8-af4b-35cf52f905c2/section/9d31b1e3-d59c-489d-8575-0c1f3e5a41a1/session)

- Previous topic: [2.1.16 Exam-Style Questions - Sorting Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-16-exam-style-questions-sorting-algorithms.md)
- Next topic: [2.2.2 Input & Output](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-2-input-and-output.md)

## Computer Science: OCR GCSE contents

### 1 Computer Systems
- 1.1 Systems Architecture
  - [1.1.1 Fetch-Execute Cycle](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-1-fetch-execute-cycle.md)
  - [1.1.2 Common CPU Components & Their Function](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-2-common-cpu-components-and-their-function.md)
  - [1.1.3 Von Neumann Architecture](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-3-von-neumann-architecture.md)
  - [1.1.4 Factors Affecting CPU Performance](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-4-factors-affecting-cpu-performance.md)
  - [1.1.5 Embedded Systems](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-5-embedded-systems.md)
  - [1.1.6 Exam-Style Questions - Von Neumann Architecture](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-6-exam-style-questions-von-neumann-architecture.md)
  - [1.1.7 Diagnostic Misconceptions - Embedded vs General](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-1-7-diagnostic-misconceptions-embedded-vs-general.md)
- 1.2 Memory & Storage
  - [1.2.1 Types of Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-1-types-of-memory.md)
  - [1.2.2 Flash Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-2-flash-memory.md)
  - [1.2.3 Properties of Flash Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-3-properties-of-flash-memory.md)
  - [1.2.4 Running Out of Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-4-running-out-of-memory.md)
  - [1.2.5 Virtual Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-5-virtual-memory.md)
  - [1.2.6 Units of Capacity](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-6-units-of-capacity.md)
  - [1.2.7 Calculating Capacity Requirements](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-7-calculating-capacity-requirements.md)
  - [1.2.8 Solid State Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-8-solid-state-storage.md)
  - [1.2.9 Properties of Solid State Media](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-9-properties-of-solid-state-media.md)
  - [1.2.10 Magnetic Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-10-magnetic-storage.md)
  - [1.2.11 Properties of Magnetic Media](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-11-properties-of-magnetic-media.md)
  - [1.2.12 Examples of Magnetic Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-12-examples-of-magnetic-storage.md)
  - [1.2.13 Optical Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-13-optical-storage.md)
  - [1.2.14 Properties of Optical Media](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-14-properties-of-optical-media.md)
  - [1.2.15 Examples of Optical Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-15-examples-of-optical-storage.md)
  - [1.2.16 Types of Optical Disk](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-16-types-of-optical-disk.md)
  - [1.2.17 Number Bases](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-17-number-bases.md)
  - [1.2.18 Converting Number Bases](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-18-converting-number-bases.md)
  - [1.2.19 Hexadecimal](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-19-hexadecimal.md)
  - [1.2.20 Using Hexadecimal](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-20-using-hexadecimal.md)
  - [1.2.21 Converting Denary & Hexadecimal](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-21-converting-denary-and-hexadecimal.md)
  - [1.2.22 Binary Addition](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-22-binary-addition.md)
  - [1.2.23 Binary Shifts](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-23-binary-shifts.md)
  - [1.2.24 Representing Text](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-24-representing-text.md)
  - [1.2.25 ASCII & Unicode](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-25-ascii-and-unicode.md)
  - [1.2.26 Representing Images](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-26-representing-images.md)
  - [1.2.27 Converting Binary & Images](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-27-converting-binary-and-images.md)
  - [1.2.28 Representing Sound](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-28-representing-sound.md)
  - [1.2.29 Data Compression](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-29-data-compression.md)
  - [1.2.30 Grade 9 - Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-30-grade-9-storage.md)
  - [1.2.31 Exam-Style Questions - Primary Memory](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-31-exam-style-questions-primary-memory.md)
  - [1.2.32 Exam-Style Questions - Storage](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-32-exam-style-questions-storage.md)
  - [1.2.33 Exam-Style Questions - Data Conversions](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-33-exam-style-questions-data-conversions.md)
  - [1.2.34 Diagnostic Misconceptions - RAM vs ROM](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-34-diagnostic-misconceptions-ram-vs-rom.md)
  - [1.2.35 Diagnostic Misconceptions - Bits, Nibbles & Bytes](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-35-diagnostic-misconceptions-bits-nibbles-and-bytes.md)
  - [1.2.36 Diagnostic Misconceptions - Bits Required to Store](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-36-diagnostic-misconceptions-bits-required-to-store.md)
  - [1.2.37 End of Topic Test - Computer Systems](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-37-end-of-topic-test-computer-systems.md)
  - [1.2.38 End of Topic Test - Representation](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-2-38-end-of-topic-test-representation.md)
- 1.3 Computer Networks, Connections & Protocols
  - [1.3.1 Benefit of Networks](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-1-benefit-of-networks.md)
  - [1.3.2 Types of Networks](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-2-types-of-networks.md)
  - [1.3.3 Network Performance](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-3-network-performance.md)
  - [1.3.4 Networks: How Do Packets Get Routed?](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-4-networks-how-do-packets-get-routed.md)
  - [1.3.5 Client-Server Model](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-5-client-server-model.md)
  - [1.3.6 Pros & Cons of Client-Server Model](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-6-pros-and-cons-of-client-server-model.md)
  - [1.3.7 Peer-to-Peer Model](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-7-peer-to-peer-model.md)
  - [1.3.8 Pros & Cons of Peer-to-Peer Model](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-8-pros-and-cons-of-peer-to-peer-model.md)
  - [1.3.9 Network Hardware](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-9-network-hardware.md)
  - [1.3.10 Transmission Media](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-10-transmission-media.md)
  - [1.3.11 What is the Internet?](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-11-what-is-the-internet.md)
  - [1.3.12 URLs](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-12-urls.md)
  - [1.3.13 DNS & Web Hosting](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-13-dns-and-web-hosting.md)
  - [1.3.14 The Cloud](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-14-the-cloud.md)
  - [1.3.15 Pros & Cons of the Cloud](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-15-pros-and-cons-of-the-cloud.md)
  - [1.3.16 Star & Mesh Network Topologies](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-16-star-and-mesh-network-topologies.md)
  - [1.3.17 WiFi](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-17-wifi.md)
  - [1.3.18 WiFi Frequency & Channels](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-18-wifi-frequency-and-channels.md)
  - [1.3.19 WiFi Encryption](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-19-wifi-encryption.md)
  - [1.3.20 IP Addresses](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-20-ip-addresses.md)
  - [1.3.21 MAC Addresses](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-21-mac-addresses.md)
  - [1.3.22 Network Protocols](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-22-network-protocols.md)
  - [1.3.23 Transmission Protocols](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-23-transmission-protocols.md)
  - [1.3.24 Application Protocols](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-24-application-protocols.md)
  - [1.3.25 Layers](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-25-layers.md)
  - [1.3.26 Advantages of Layering](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-26-advantages-of-layering.md)
  - [1.3.27 Exam-Style Questions - Networking Models](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-27-exam-style-questions-networking-models.md)
  - [1.3.28 Exam-Style Questions - Network Protocols](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-28-exam-style-questions-network-protocols.md)
  - [1.3.29 Diagnostic Misconceptions - LAN vs WAN](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-3-29-diagnostic-misconceptions-lan-vs-wan.md)
- 1.4 Network Security
  - [1.4.1 Forms of Attack](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-1-forms-of-attack.md)
  - [1.4.2 Penetration Testing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-2-penetration-testing.md)
  - [1.4.3 Malware](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-3-malware.md)
  - [1.4.4 How Malware Spreads](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-4-how-malware-spreads.md)
  - [1.4.5 Social Engineering](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-5-social-engineering.md)
  - [1.4.6 Phishing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-6-phishing.md)
  - [1.4.7 Cracking Passwords](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-7-cracking-passwords.md)
  - [1.4.8 Denial of Service Attacks](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-8-denial-of-service-attacks.md)
  - [1.4.9 Data Interception](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-9-data-interception.md)
  - [1.4.10 Methods of Data Interception](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-10-methods-of-data-interception.md)
  - [1.4.11 SQL Injection](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-11-sql-injection.md)
  - [1.4.12 Network Administration](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-12-network-administration.md)
  - [1.4.13 Network Forensics](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-13-network-forensics.md)
  - [1.4.14 Protecting Against Malware](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-14-protecting-against-malware.md)
  - [1.4.15 Firewalls](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-15-firewalls.md)
  - [1.4.16 User Access Levels](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-16-user-access-levels.md)
  - [1.4.17 Passwords](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-17-passwords.md)
  - [1.4.18 Encryption](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-18-encryption.md)
  - [1.4.19 End of Topic Test - Networks](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-4-19-end-of-topic-test-networks.md)
- 1.5 Systems Software
  - [1.5.1 System Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-1-system-software.md)
  - [1.5.2 Utility Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-2-utility-software.md)
  - [1.5.3 Operating Systems](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-3-operating-systems.md)
  - [1.5.4 User Interfaces](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-4-user-interfaces.md)
  - [1.5.5 Memory & Process Management](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-5-memory-and-process-management.md)
  - [1.5.6 File Management](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-6-file-management.md)
  - [1.5.7 Device Management](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-7-device-management.md)
  - [1.5.8 User Management](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-8-user-management.md)
  - [1.5.9 Encryption Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-9-encryption-software.md)
  - [1.5.10 Defragmentation Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-10-defragmentation-software.md)
  - [1.5.11 Data Compression Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-11-data-compression-software.md)
  - [1.5.12 Backup Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-5-12-backup-software.md)
- 1.6 Ethical, Legal, Cultural & Environmental Concern
  - [1.6.1 Open Source Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-1-open-source-software.md)
  - [1.6.2 Proprietary Software](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-2-proprietary-software.md)
  - [1.6.3 Licensing Issues](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-3-licensing-issues.md)
  - [1.6.4 Ethical Issues - The Digital Divide](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-4-ethical-issues-the-digital-divide.md)
  - [1.6.5 Ethical Issues - Net Neutrality](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-5-ethical-issues-net-neutrality.md)
  - [1.6.6 Ethical Issues - Working Conditions](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-6-ethical-issues-working-conditions.md)
  - [1.6.7 Ethical Issues - Censorship](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-7-ethical-issues-censorship.md)
  - [1.6.8 Exam-Style Questions - Ethical Issues](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-8-exam-style-questions-ethical-issues.md)
  - [1.6.9 Data Protection Act 1998](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-9-data-protection-act-1998.md)
  - [1.6.10 Computer Misuse Act (1990)](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-10-computer-misuse-act-1990.md)
  - [1.6.11 Copyright Designs & Patents Act (1988)](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-11-copyright-designs-and-patents-act-1988.md)
  - [1.6.12 Creative Commons Licensing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-12-creative-commons-licensing.md)
  - [1.6.13 Freedom of Information Act (2000)](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-13-freedom-of-information-act-2000.md)
  - [1.6.14 Cultural Issues](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-14-cultural-issues.md)
  - [1.6.15 Environmental Issues](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-15-environmental-issues.md)
  - [1.6.16 Online Activity Tracking & The Internet of Things](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-16-online-activity-tracking-and-the-internet-of-things.md)
  - [1.6.17 Stakeholders](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-17-stakeholders.md)
  - [1.6.18 Other Impacts of Digital Technology on Society](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-18-other-impacts-of-digital-technology-on-society.md)
  - [1.6.19 End of Topic Test - Software & Issues](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-19-end-of-topic-test-software-and-issues.md)
  - [1.6.20 Diagnostic Misconceptions - Open Source](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/1-6-20-diagnostic-misconceptions-open-source.md)

### 2 Computational Thinking, Algorithms & Programming
- 2.1 Algorithms
  - [2.1.1 Computational Thinking - Abstraction](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-1-computational-thinking-abstraction.md)
  - [2.1.2 Computational Thinking - Decomposition](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-2-computational-thinking-decomposition.md)
  - [2.1.3 Algorithmic Thinking](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-3-algorithmic-thinking.md)
  - [2.1.4 Pseudocode](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-4-pseudocode.md)
  - [2.1.5 Flowchart Diagrams](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-5-flowchart-diagrams.md)
  - [2.1.6 Interpreting Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-6-interpreting-algorithms.md)
  - [2.1.7 Correcting Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-7-correcting-algorithms.md)
  - [2.1.8 Completing Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-8-completing-algorithms.md)
  - [2.1.9 Search Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-9-search-algorithms.md)
  - [2.1.10 Binary Search](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-10-binary-search.md)
  - [2.1.11 Linear Search](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-11-linear-search.md)
  - [2.1.12 Overview of Sort Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-12-overview-of-sort-algorithms.md)
  - [2.1.13 Bubble Sort](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-13-bubble-sort.md)
  - [2.1.14 Merge Sort](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-14-merge-sort.md)
  - [2.1.15 Insertion Sort](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-15-insertion-sort.md)
  - [2.1.16 Exam-Style Questions - Sorting Algorithms](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-1-16-exam-style-questions-sorting-algorithms.md)
- 2.2 Programming Fundamentals
  - [2.2.1 Variable Declaration & Assignment](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-1-variable-declaration-and-assignment.md)
  - [2.2.2 Input & Output](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-2-input-and-output.md)
  - [2.2.3 Program Flow - Sequence](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-3-program-flow-sequence.md)
  - [2.2.4 Program Flow - Selection](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-4-program-flow-selection.md)
  - [2.2.5 Program Flow - Iteration](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-5-program-flow-iteration.md)
  - [2.2.6 Arithmetic Operators](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-6-arithmetic-operators.md)
  - [2.2.7 Relational Operators](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-7-relational-operators.md)
  - [2.2.8 Boolean Operators](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-8-boolean-operators.md)
  - [2.2.9 Data Types](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-9-data-types.md)
  - [2.2.10 Casting](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-10-casting.md)
  - [2.2.11 Arrays](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-11-arrays.md)
  - [2.2.12 Strings](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-12-strings.md)
  - [2.2.13 File Handling](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-13-file-handling.md)
  - [2.2.14 Structuring Data - Records](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-14-structuring-data-records.md)
  - [2.2.15 Structured Query Language](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-15-structured-query-language.md)
  - [2.2.16 Random Number Generation](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-16-random-number-generation.md)
  - [2.2.17 End of Topic Test - Programming](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-17-end-of-topic-test-programming.md)
  - [2.2.18 Exam-Style Questions - Translation](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-18-exam-style-questions-translation.md)
  - [2.2.19 Diagnostic Misconceptions - Comparison Operators](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-19-diagnostic-misconceptions-comparison-operators.md)
  - [2.2.20 Diagnostic Misconceptions - = & ==](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-20-diagnostic-misconceptions-=-and-==.md)
  - [2.2.21 Diagnostic Misconceptions - Types of Data](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-21-diagnostic-misconceptions-types-of-data.md)
  - [2.2.22 Diagnostic Misconceptions - Last Line of Code](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-22-diagnostic-misconceptions-last-line-of-code.md)
  - [2.2.23 Diagnostic Misconceptions - Array Index](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-2-23-diagnostic-misconceptions-array-index.md)
- 2.3 Producing Robust Programs
  - [2.3.1 Defensive Design](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-1-defensive-design.md)
  - [2.3.2 Validation & Sanitisation](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-2-validation-and-sanitisation.md)
  - [2.3.3 Authentication & Contingencies](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-3-authentication-and-contingencies.md)
  - [2.3.4 Maintainability](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-4-maintainability.md)
  - [2.3.5 Purpose of Testing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-5-purpose-of-testing.md)
  - [2.3.6 Types of Testing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-6-types-of-testing.md)
  - [2.3.7 Test Plans](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-7-test-plans.md)
  - [2.3.8 Types of Errors](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-8-types-of-errors.md)
  - [2.3.9 End of Topic Test - Programming](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-9-end-of-topic-test-programming.md)
  - [2.3.10 Exam-Style Questions - Testing](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-3-10-exam-style-questions-testing.md)
- 2.4 Boolean Logic
  - [2.4.1 Binary Systems](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-4-1-binary-systems.md)
  - [2.4.2 Logic Circuits](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-4-2-logic-circuits.md)
  - [2.4.3 Boolean Logic](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-4-3-boolean-logic.md)
  - [2.4.4 Boolean Operators](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-4-4-boolean-operators.md)
  - [2.4.5 Grade 9 - Logic](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-4-5-grade-9-logic.md)
- 2.5 Programming Languages & IDEs
  - [2.5.1 High-Level vs Low-Level Languages](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-5-1-high-level-vs-low-level-languages.md)
  - [2.5.2 Translation - Compliers & Interpreter](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-5-2-translation-compliers-and-interpreter.md)
  - [2.5.3 Translation - Assemblers](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-5-3-translation-assemblers.md)
  - [2.5.4 Integrated Development Environments](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-5-4-integrated-development-environments.md)
  - [2.5.5 Exam-Style Questions - Translation](https://senecalearning.com/en-gb/revision-notes/gcse/computer-science/ocr/2-5-5-exam-style-questions-translation.md)
