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

4 questions · 16 marks

Pick again
Print
1Short recall2 marksCompression Swap Remove

Files can be compressed before they are stored.

Define the term lossless compression.

[2 marks]
Mark scheme

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

  • Reduces/makes the size of a file smaller (1)
  • No data is lost/removed (during compression) (1)
  • The original file/data can be recreated/restored exactly (1)

Allow 'the compressed file takes up less storage space' for the first mark.

The second and third bullets are two ways of making the same point: award a maximum of one mark for them, so a response that says no data is lost and that the original file can be restored, but does not say the file is smaller, scores one mark.

Do not accept descriptions of lossy compression, e.g. 'it removes data that is not needed to make the file smaller'.

Ignore reference to download/transmission times, bandwidth and streaming, as these are benefits of compression and not part of the definition.

Example answers and how they were marked
Full marks2/2

Lossless compression reduces the size of a file without permanently removing any data, so the original file can be restored exactly.

Why: Reduces the size of a file (1) and no data is lost, so the original can be restored exactly (1); maximum of two marks reached.

Some marks1/2

It makes a file smaller so it downloads more quickly.

Why: Reduces the size of a file (1); the faster download is ignored as a benefit, not part of the definition.

No marks0/2

It removes data that is not needed to make the file smaller.

Why: Describes lossy compression, which the do-not-accept line rules out, so the mention of making the file smaller is not credited.

2Describe2 marksTranslators Swap Remove

Source code can contain syntax errors.

Describe how a compiler and an interpreter differ in the way they deal with syntax errors.

[2 marks]
Mark scheme

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

  • The compiler reports all syntax errors after translation has finished (1) whereas the interpreter stops at the first error it finds (1)
  • The interpreter reports a syntax error as soon as it finds one (1) and does not translate/execute any more of the program (1)
  • The compiler continues translating after an error (1) and reports the errors at the end (1)
  • The interpreter stops translating when it reaches an error (1) but the compiler finishes translating before reporting errors (1)

Do not accept answers about fixing/correcting errors or about object code.

Do not award 'the compiler finds more errors' without saying errors are reported at the end.

Example answers and how they were marked
Full marks2/2

A compiler reports all the syntax errors at the end of translation, whereas an interpreter stops and reports the error as soon as it finds one.

Why: Compiler reports errors at the end (1) and interpreter stops/reports at the first error (1).

Some marks1/2

An interpreter stops translating when it finds a syntax error.

Why: Interpreter stops at the first error (1); no comparison with when the compiler reports errors.

No marks0/2

A compiler reports a syntax error immediately, before translating the rest of the program.

Why: Reverses the compiler's behaviour; it finishes translating before reporting errors.

3Discuss6 marksUtility Software Swap Remove

A small graphic design company keeps all of its project files on one desktop computer. The computer's hard disk has failed and some files have been lost. The owner has been told to use backup software.

Discuss the backup strategy the company should use.

Your answer should include:

  • the types of backup that could be used
  • where and how often backups should be made
  • how the backups would be used if the hard disk failed again.
[6 marks]
Mark scheme

Indicative content

Types of backup that could be used

  • A full backup copies all of the company's project files every time it is run, so the whole set of files is held together in one backup.
  • A full backup takes longer to make and needs more storage space than an incremental backup.
  • An incremental backup copies only the files that have changed since the previous backup, so it is quicker to run each evening.
  • Restoring from incremental backups needs the last full backup plus every incremental backup made since, which takes longer and is more complex.
  • A weekly full backup with nightly incremental backups can be suitable for the company when the reason is explained using the properties of the two types.

Where and how often backups should be made

  • Backups should be kept on a separate device and, ideally, at a different location, so that a fire or theft in the office cannot destroy the computer and the backups together.
  • Backups should be made regularly, for example every evening, so that at most one day's design work would be lost.
  • Cloud storage can hold copies off-site automatically, without the owner taking a disk home.
  • An external hard disk or USB flash drive can be used as the backup medium, with a copy kept away from the office.

How the backups would be used if the hard disk failed again

  • If the hard disk fails again, the backup software is used to restore the latest full backup and any later incremental backups onto a replacement disk.
  • The restored project files allow the company to carry on working and meet its clients' deadlines.
  • The backups should be tested by restoring a file so that the company knows the backup is usable before it is needed.
  • Backup software does not repair the failed hard disk itself, so a replacement disk is still needed.

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)

Level 3 requires all three bullets to be developed and applied, including both types of backup (or a justified combination) and a restoration sequence; a response that describes only a full backup cannot reach Level 3.

An answer that explains only one type of backup with at most a brief location or frequency point and no developed restoration is Level 1 (1–2 marks). Credit one off-site point only: cloud storage, an external disk kept elsewhere and 'a different location' are the same point. Do not accept that backup software repairs a failed hard disk or recovers files that were never backed up; an answer that only makes this claim is Level 0. An unsupported weekly-full/nightly-incremental recommendation is not credited.

Example answers and how they were marked
Full marks6/6

The company should make a full backup once a week and incremental backups every evening. A full backup copies every project file, so the whole set is held in one place, but it takes a long time and a lot of space. An incremental backup copies only the files that have changed since the last backup, so it is quick enough to run each night. The backups should be copied to an external hard disk that the owner takes home, or uploaded to cloud storage, so that a fire or a theft cannot destroy the computer and the backups together. Backing up every evening means that at most one day's design work would be lost. If the hard disk fails again, the backup software is used to restore the latest full backup and then each incremental backup onto a new disk, so the company can carry on meeting its clients' deadlines.

Why: Level 3: full and incremental backups are explained and applied to a weekly and nightly schedule (AO1); off-site storage and the restore sequence onto a replacement disk are developed and clearly tied to the hard disk failure (AO2).

Some marks2/6

The company should back up its files to an external hard disk. A full backup copies all of the files, so the project files can be restored if the hard disk fails again. The backup should be kept in a different room in case there is a fire.

Why: Level 1: names a full backup and briefly links it to restoring files, and gives a weak location point, but there is no incremental backup, frequency or developed restore sequence, so the points remain basic and independent.

No marks0/6

Backup software repairs the hard disk when it fails, so the company will not lose anything and can open the files again.

Why: Level 0: the only claim is that backup software repairs the failed hard disk and prevents all loss, which the mark scheme does not accept; no valid type, location, frequency or restoration point is made.

4Discuss6 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.