Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 604 exam-style questions, each with its mark scheme and example answers. Print it, or answer it on paper and then open the mark schemes. Or browse the questions by topic.

Build a paper

Topics (none ticked: all of them)
Question types (none ticked: all of them)

Practice paper

5 questions · 14 marks

Pick again
Print
1Short recall2 marksStored Program Computers Swap Remove

Computers use the von Neumann stored program concept.

Define the term stored program concept.

[2 marks]
Mark scheme

Award one mark for any of the following up to a maximum of two marks:

  • Program instructions are stored in main memory/RAM (1)
  • The data used by the program is stored in main memory/RAM (1)
  • The CPU fetches/reads instructions from main memory to execute them (1)
  • The program can be run without the instructions being input again (1)

Allow 'the program is stored in memory' for one mark.

Do not accept answers about programs being stored on secondary storage, such as a hard disk or USB memory stick.

Do not accept answers that only describe the von Neumann architecture (e.g. having a CPU and memory) without stating that instructions are stored in main memory.

Example answers and how they were marked
Full marks2/2

Both the program instructions and the data the program uses are held in the same main memory, and the CPU fetches these instructions from memory to execute them.

Why: Instructions stored in main memory (1) and the CPU fetches instructions from memory to execute them (1).

Some marks1/2

Program instructions are stored in main memory.

Why: Instructions stored in main memory (1). No second point about data being stored in the same memory or about the CPU fetching instructions.

No marks0/2

The program is saved on the hard disk so that it can be loaded into RAM when the user runs it.

Why: A near-miss about secondary storage, which the mark scheme says not to accept; the stored program concept is about instructions being held in main memory.

2Short recall2 marksUnits & Conversion Swap Remove

Data storage is measured in binary multiples.

Define the term bit.

[2 marks]
Mark scheme

Award one mark for any of the following up to a maximum of two marks:

  • A binary digit (1)
  • Has the value 0 or 1 (1)
  • The smallest unit of data storage (1)
  • A single 0 or 1 (1)

Allow binary digit/binary place value for binary digit

Allow a single binary digit for a single 0 or 1

Do not accept a group of 8 bits/half a nibble of 4 bits, which describe a byte or a nibble

Do not accept a binary number/binary on its own

Example answers and how they were marked
Full marks2/2

A binary digit that can have the value 0 or 1.

Why: A binary digit (1) and has the value 0 or 1 (1).

Some marks1/2

It is the smallest unit of data storage.

Why: Smallest unit of data storage (1), but does not state that it is a binary digit or that it has the value 0 or 1.

No marks0/2

A group of 8 bits.

Why: Describes a byte, not a bit; no creditworthy point and named in the Do not accept line.

3Describe2 marksUtility Software Swap Remove

A hard disk can become fragmented as files are saved and deleted.

Describe how disk defragmentation software improves the performance of a hard disk.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Parts of a file are moved so they are stored together/in consecutive locations (1) so the read/write head has less distance to travel to read the file (1)
  • Files are rearranged so that each file is stored in one block (1) which reduces the time taken to open/load the file (1)
  • Free space on the disk is collected into one area (1) so new files can be saved without becoming fragmented (1)
  • The parts of each fragmented file are put in order (1) so fewer movements of the read/write head are needed to read it (1)

Do not accept responses about compressing files, deleting files or increasing the amount of storage, as these are not what defragmentation software does.

Do not accept 'it makes the disk faster' without saying how the files are changed.

Example answers and how they were marked
Full marks2/2

It moves the parts of a file so they are stored together in consecutive locations (1), so the read/write head does not have to move as far and the file opens more quickly (1).

Why: Linked point (1) and development (1): the file parts are stored together, which reduces read/write head movement.

Some marks1/2

It reorganises the files on the hard disk so that they are stored together.

Why: The point is made (1) but there is no development saying how this improves performance, so the second mark is not awarded.

No marks0/2

It compresses the files so that they take up less space on the disk.

Why: This describes data compression software, which the mark scheme says is not accepted; no creditworthy point is made.

4Describe2 marksLow and High Level Languages Swap Remove

A program can be written in a high-level language such as Python.

Describe one characteristic of a high-level programming language.

[2 marks]
Mark scheme

Award up to two marks for a linked description such as:

  • Statements are written using words/phrases that look like English or maths (1) so the code is easier to read/understand/write (1)
  • One statement is translated into several machine code instructions (1) so programs are shorter to write than in a low-level language (1)
  • High-level languages provide built-in data structures such as arrays/lists/records (1) so a collection of data items can be stored and accessed under one name (1)

Do not accept responses that only give a benefit or drawback, such as 'it is easier to learn', with no characteristic.

Do not accept 'it is easier than a low-level language' without saying what the characteristic is.

Example answers and how they were marked
Full marks2/2

Statements are written using words that look like English or maths (1) so the program is easier to read and understand (1).

Why: Characteristic of the statements (1) with a linked development (1).

Some marks1/2

It has built-in data structures such as arrays.

Why: A correct characteristic (1) but no development of what it allows the programmer to do.

No marks0/2

It is easier to learn than a low-level language.

Why: Gives only a benefit compared with a low-level language; no characteristic of the language itself, so no mark.

5Discuss6 marksLow and High Level Languages Swap Remove

A school computing club is creating a quiz game. The game will be written by students who are new to programming. It will store the names and scores of players in a list. The club wants to choose a language that helps the students finish the game quickly and with few errors.

Discuss the characteristics of a high-level programming language that make it suitable for writing the quiz game.

Your answer should include:

  • how easy the language is to learn, use and debug
  • the data structures it provides for storing the players' names and scores
  • the built-in functions and library routines it provides.
[6 marks]
Mark scheme

Indicative content

Ease of learning, use and debug

  • High-level language statements are written in English-like words and mathematical symbols, so the students can read the quiz game code and understand what each line does.
  • The language is easier to learn than a low-level language, so students who are new to programming can start writing the quiz game quickly.
  • Errors are easier to find and fix because the code is readable; for example, the students can check a line that updates a score against the rule they intended.
  • The students do not need to know how the processor carries out each statement, so they can concentrate on the quiz questions and rules.

Data structures

  • High-level languages provide lists or arrays, so the names and scores of all the players can be stored under one name and processed with a loop.
  • A record can store a player's name and score as one item; in some languages a dictionary or class can be used instead, which keeps related data together.
  • Using a data structure makes the code shorter and easier to understand than separate variables for every player's name and score.

Built-in functions and library routines

  • High-level languages provide built-in functions such as print and input, so the students can display a question and read a player's answer without writing the underlying code.
  • Library routines such as a random number generator can be used to choose quiz questions, saving the students time.
  • String-handling routines can check or compare a player's answer, so the students do not have to write these routines themselves.
  • Reusing tested routines reduces the amount of code the students write and can reduce errors in the quiz game.

Levels

  • Level 0 (0 marks): No rewardable content.
  • Level 1 (1–2 marks): Basic, independent points are made, showing elements of understanding of key concepts/principles of computer science. (AO1) The discussion will contain basic information with little linkage between points made or application to the context. (AO2)
  • Level 2 (3–4 marks): Demonstrates adequate understanding of key concepts/principles of computer science. (AO1) The discussion shows some linkages and lines of reasoning with some structure and application to the context. (AO2)
  • Level 3 (5–6 marks): Demonstrates comprehensive understanding of key concepts/principles of computer science to support the discussion being presented. (AO1) The discussion is well developed, with sustained lines of reasoning that are coherent and logically structured, and which clearly apply to the context. (AO2)

Additional guidance: Credit only points applied to the quiz game and the students; comparison with low-level languages is not required, but a correct contrast may support a point if it is applied. Do not award generic claims such as 'high-level programs run faster', 'work on any computer' or 'students do not need to learn syntax' unless they are justified for the quiz game.

Level 3 responses must cover all three bullet areas with linked reasoning that explains why the characteristic helps the students finish the game quickly with few errors; an answer covering only two bullet areas is limited to Level 2. Do not award the idea that high-level code is already machine code or is understood directly by the processor. Accept dictionaries or classes as equivalents of records.

Example answers and how they were marked
Full marks6/6

A high-level language is suitable for the quiz game because its statements use English-like words and mathematical symbols, so students who are new to programming can read the code and see what each part of the quiz does. This also makes the game easier to debug, because the students can compare a line that updates a player's score with the rule they intended. The language gives the students lists or arrays, so all the players' names and scores can be stored under one name, and a loop can then go through the list to display the results. A record, or a dictionary in Python, can keep one player's name and score together, which is clearer than using separate variables. The language also provides built-in functions and library routines such as input, print and a random number generator, so the students do not have to write these from scratch. They can use input to ask for a player's name and print to show the score, and a random number routine to choose a question. This lets the club spend its time on the quiz questions and rules, so the students can finish the game quickly with fewer errors.

Why: Covers all three bullet areas with linked reasoning: readable English-like statements and debugging, lists/records for names and scores, and built-in input/print/random routines, all applied to helping new students finish quickly with fewer errors. This meets Level 3.

Some marks3/6

High-level languages use English words, so the students can understand the code for the quiz game and find mistakes more easily. They provide lists or arrays, so the players' names and scores can be stored together, and a loop can be used to display the scores. This makes the game easier to write for students who are new to programming.

Why: Level 2, 3 marks: covers ease of learning/use and data structures with some application to the quiz game, but gives no built-in facilities and limited development of why this helps the club finish quickly, so it is not Level 3.

No marks0/6

High-level code is already machine code, so the computer can run the quiz game without a translator. The students do not need to learn any syntax.

Why: Contains the machine-code misconception and a generic claim that the scheme does not credit; no creditworthy point is made, so Level 0.

Questions by topic

More ways to revise Edexcel GCSE Computer Science (1CP2)

Teachers: build a paper, print it with the mark schemes at the end, and sign your school up to set your classes activities on every topic.

Fetch Decode Explain isn't affiliated with or endorsed by Pearson Edexcel.