Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 514 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

9 questions · 19 marks

Pick again
Print
1Multiple choice1 markCompression Swap Remove

Identify the definition of lossy compression.

[1 mark]
  • AData is removed only while the file is being transmitted
  • BData is permanently removed to reduce the file size
  • CData is restored exactly when it is decompressed
  • DData is stored using a dictionary of repeated patterns
Mark scheme
  • B Data is permanently removed to reduce the file size (1)
  • The only correct answer is B. The correct answer is data is permanently removed to reduce the file size.
  • A is not correct because the data removed by a lossy algorithm is not restored after transmission
  • C is not correct because that describes lossless compression, where the original file is rebuilt exactly
  • D is not correct because dictionary encoding is a lossless method that records repeated patterns once
Example answers and how they were marked
Full marks1/1

B Data is permanently removed to reduce the file size

Why: Correct option (1).

No marks0/1

C Data is restored exactly when it is decompressed

Why: Near miss: this describes lossless compression, so no mark.

No marks0/1

A Data is removed only while the file is being transmitted

Why: Misconception that compression only applies during transmission; the data is removed permanently, so no mark.

2Multiple choice1 markProcess Management Swap Remove

Identify the term for the fixed, short period of CPU time that each process is given.

[1 mark]
  • AProcess
  • BRound robin
  • CScheduler
  • DTime slice
Mark scheme
  • D Time slice (1)
  • The only correct answer is D. The correct answer is time slice.
  • A is not correct because a process is a program that is being run
  • B is not correct because round robin is a scheduling method that takes turns, not the period of CPU time itself
  • C is not correct because a scheduler decides which process runs next
Example answers and how they were marked
Full marks1/1

D Time slice

Why: Correct option: a time slice is the fixed, short period of CPU time given to each process (1).

No marks0/1

C Scheduler

Why: Near miss: the scheduler decides which process runs next, but it does not name the period of CPU time given to a process (0).

No marks0/1

A Process

Why: A process is a program that is being run, not the CPU time it is given (0).

3Short recall1 markProtocols & Layers Swap Remove

TCP is a protocol in the transport layer of the TCP/IP model.

State one role of TCP when data is transmitted over a network.

[1 mark]
Mark scheme

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

  • Breaks messages/data into packets (1)
  • Reassembles packets (at the destination) (1)
  • Detects errors (1)
  • Resends lost/missing packets/requests retransmission of lost packets (1)
  • Creates/establishes a connection between two computers/hosts/sets up a connection before data is sent (1)

Do not accept routing packets or using IP addresses, which is the role of IP.

Do not accept encrypting data or providing security.

Do not accept vague answers such as 'transmits data' or 'sends data' without saying how TCP does this.

Example answers and how they were marked
Full marks1/1

It splits data into packets.

Why: States that TCP breaks data into packets.

No marks0/1

It routes packets between IP addresses.

Why: Near-miss: routing packets is the role of IP, not TCP.

No marks0/1

It encrypts data so it is secure.

Why: Encryption is not a role of TCP, so no creditworthy point.

4Describe2 marksEmbedded Systems Swap Remove

A drone is controlled by an embedded system.

Describe the purpose of the embedded system in the drone.

[2 marks]
Mark scheme

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

  • It controls the motors/rotors (1) so that the drone can take off, hover, turn and land (1)
  • It keeps the drone stable/level automatically (1) by taking readings from a sensor (accelerometer/gyroscope/GPS) (1)
  • It receives signals from the remote control (1) and changes the speed of the motors to steer the drone (1)
  • It monitors the battery level (1) and brings the drone back to the ground before the battery runs out (1)

The development must relate to the function given in the point.

Accept a named function that the embedded system controls, e.g. 'it keeps the drone level', as the first mark (1).

Award the second mark only when the development gives a specific outcome or detail of that function, e.g. 'so that the drone can take off, hover, turn and land' or 'by changing the motor speeds to keep it level'.

Do not award the second mark for a generic outcome such as 'so it works', 'so it can fly' or 'so the drone moves'.

A bare 'it controls the motors so it can fly' therefore earns the first mark only.

Allow any other specific function of a drone that is carried out by the embedded system.

Do not accept 'it flies the drone' / 'it is the drone's brain' / 'it makes the drone work' without a named function being controlled.

Do not accept answers that describe the user or the remote control flying the drone with no function carried out by the embedded system.

Example answers and how they were marked
Full marks2/2

It keeps the drone level while it is in the air by reading the accelerometer and changing the speed of the motors.

Why: Named function of the embedded system, keeping the drone level (1), developed with the sensor reading and motor speed changes that achieve it (1).

Some marks1/2

It controls the motors of the drone.

Why: First mark only (1) for naming a function the embedded system controls, with no linked outcome or detail to earn the second mark.

No marks0/2

It is the brain of the drone and makes the drone work.

Why: Vague phrase with no named function being controlled, which the mark scheme's 'Do not accept' line rules out.

5Describe2 marksCompression Swap Remove

A school compresses its text documents before backing them up.

Describe how lossless compression reduces the size of a text file.

[2 marks]
Mark scheme

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

  • Repeated words/patterns are found (1) and stored once in a dictionary with a code (1)
  • Each repeated word/pattern is replaced by a shorter code (1) so fewer bits are needed to store the text (1)
  • No data is removed (1) so the original text can be recreated exactly (1)
  • The compressed file is smaller (1) but all the original characters can still be restored (1)

Do not accept answers that say data is permanently removed or quality is reduced.

Example answers and how they were marked
Full marks2/2

It finds repeated words in the document (1) and stores them once in a dictionary with a code (1).

Why: Linked point: repeated words found (1) and development: stored once in a dictionary (1).

Some marks1/2

It makes the file smaller without losing any of the data.

Why: States that no data is lost (1); no linked method or exact restoration is given (1).

No marks0/2

It removes repeated characters permanently so the file takes up less space.

Why: Describes permanent removal, which is lossy, not lossless; no credit.

6Explain2 marksSound Swap Remove

Each sample of a sound wave is stored in binary using a fixed number of bits.

Explain one limitation of representing an analogue sound wave in binary when only a small number of bits is available for each sample.

[2 marks]
Mark scheme

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

  • Only a limited number of different amplitude values can be stored (1) so each sample is rounded to the nearest available value and the digital wave does not match the analogue wave exactly (1)
  • The wave is continuous but only a limited set of values can be represented (1) so amplitude detail/accuracy is lost (1)
  • Quiet and loud parts of the sound may be stored as the same value (1) because there are too few values to tell them apart (1)
  • The range of amplitudes that can be represented is limited (1) so the loudest/quietest parts of the sound cannot be stored accurately (1)

For both marks, the expansion must follow/associate with the statement.

Do not award marks for answers that say the sound cannot be stored or heard at all.

Do not award answers about the number of samples taken/sample rate, as the number of bits limits the amplitude values, not how often the wave is sampled.

Do not accept 'lower quality'/'less accurate'/'less detail' on its own without a link to the amplitude values that can be stored/the number of bit combinations.

Do not accept 'the file size is smaller' without a link to the accuracy or the range of values that can be stored.

Example answers and how they were marked
Full marks2/2

Only a small number of amplitude values can be stored, so each sample is rounded to the nearest value and does not match the original wave exactly.

Why: Point (limited number of amplitude values) (1) with linked reason (samples are rounded and the wave is not exact) (1).

Some marks1/2

Only a small number of amplitude values can be stored.

Why: Creditworthy point (1) but no linked limitation such as rounding or lost accuracy, so only one mark.

No marks0/2

The sound cannot be stored at all because there are not enough bits to hold every sample.

Why: Misconception: the sound can still be stored, just less accurately, so no mark is awarded.

7Explain2 marksBinary and Hexadecimal Basics Swap Remove

Computers represent all data using binary.

Explain one reason why computers use binary to represent data.

[2 marks]
Mark scheme

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

  • (Computers) are made of electronic components/switches/transistors that have two states, on/off (1) so binary's two values 0 and 1 can represent these states (1)
  • Data stored as binary is more resistant to errors (1) because only two voltage levels/states need to be distinguished, so electrical noise/interference is less likely to be misread as a different value (1)
  • Circuits that only need to distinguish two states are simpler/cheaper to manufacture (1) because each component only needs to hold one of two stable states (1)

For both marks, the expansion must follow/associate with the statement.

Do not accept 'computers only understand 0s and 1s' as a reason on its own without saying what the two states are or why binary matches them.

Do not accept 'computers are digital' or 'that is how computers work' without expansion.

Do not accept 'binary is easier to read/write' or 'binary is easier to understand' as a reason for using binary.

Do not award the same point twice if it is repeated in different words, e.g. two answers that both say circuits/components are on or off.

Example answers and how they were marked
Full marks2/2

Computers use binary because their electronic circuits have two states, on and off. Binary also has only two values, 0 and 1, so these can represent the states of the circuit.

Why: Links the two circuit states (1) to binary's two values representing them (1).

Some marks1/2

Computers use binary because their circuits are either on or off.

Why: Identifies the two circuit states (1) but does not link them to binary's two values, so the second mark is not awarded.

No marks0/2

Computers use binary because it is easier to read than denary.

Why: 'Easier to read' is a reason for using hexadecimal, not a correct reason for using binary; the mark scheme tells markers not to accept it, so no mark.

8Explain2 marksLow and High Level Languages Swap Remove

High-level languages are designed to be easier to learn than low-level languages.

Explain one reason why a high-level language is easier to learn than a low-level language.

[2 marks]
Mark scheme

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

  • Statements are written in English-like words/use maths symbols (1) so the programmer can understand more easily what each one does (1)
  • The language uses meaningful names for variables/structured constructs such as loops (1) so the code is easier to read/follow (1)
  • One statement translates into several machine code instructions (1) so there are fewer instructions to learn/understand for the same task (1)

For both marks, the expansion must follow/associate with the statement.

Do not accept 'it is easier' / 'it is simpler' on its own, without saying what is easier/simpler.

Do not accept 'the computer understands it directly' / 'it does not need translating'.

Do not award answers about the program running faster or using less memory, as these are not about ease of learning.

Example answers and how they were marked
Full marks2/2

Statements are written in English-like words (1) so the programmer can understand more easily what each line does (1).

Why: Linked point (1) of English-like statements and reason (1) that these are easier to understand.

Some marks1/2

It uses meaningful names for variables (1) so it is easier.

Why: Point (1) that meaningful names for variables are used, but 'so it is easier' is not accepted as the linked reason.

No marks0/2

Because the computer can understand high-level code without translation.

Why: Misconception that high-level code is understood directly by the computer; no creditworthy characteristic of the language is given.

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