Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

Build a practice paper from 659 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 · 7 marks

Pick again
Print
1Multiple choice1 markTranslators Swap Remove

An interpreter translates high-level code differently from a compiler.

Identify what an interpreter does immediately after translating a line of code.

[1 mark]
  • AExecutes the line
  • BProduces the object code
  • CSaves the line to a file
  • DTranslates the next line
Mark scheme
  • A Executes the line (1)
  • The only correct answer is A. The correct answer is that the interpreter executes the line.
  • B is not correct because an interpreter does not produce object code; that is what a compiler does
  • C is not correct because an interpreter does not save the translated code to a file
  • D is not correct because the interpreter executes the current line before it translates the next line
Example answers and how they were marked
Full marks1/1

A Executes the line

Why: Selected the line being executed straight after translation, which is how an interpreter works (1).

No marks0/1

D Translates the next line

Why: Near miss: the interpreter executes the translated line first and only then moves on to translate the next line, so no mark.

No marks0/1

B Produces the object code

Why: Confuses interpretation with compilation: object code is produced by a compiler, not an interpreter, so no mark.

2Short recall2 marksLow and High Level Languages Swap Remove

Programs can be written in high-level or low-level programming languages.

Define the term high-level programming language.

[2 marks]
Mark scheme

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

  • Uses statements/instructions that look like English/maths (1)
  • Does not depend on one type of processor / can be run on different types of computer with few or no changes (machine independent) (1)
  • A single statement is translated into several machine code instructions (1)
  • Provides data structures such as arrays and records (1)
  • Provides built-in/library subprograms (1)
  • Is translated by a compiler or an interpreter (1)

Allow portable/platform independent for machine independent.

Allow easier to read/write/understand/debug only when linked to the English-like statements, e.g. uses words that look like English so it is easier to understand.

Do not accept a high-level language / not a low-level language with no other detail.

Do not accept written in binary/machine code.

Do not accept faster to run / uses less memory, as these are characteristics of low-level languages.

Example answers and how they were marked
Full marks2/2

A language that uses statements that look like English and a program written in it can be run on different types of computer without being rewritten.

Why: English-like statements (1) and machine independent/portable (1).

Some marks1/2

A language that provides data structures such as arrays and records.

Why: Creditworthy point: provides data structures (1). No second part of the definition given.

No marks0/2

A language that is written in binary so the computer can understand it.

Why: Misconception: binary is machine code, not a high-level language; the mark scheme's do-not-accept line covers this.

3Explain2 marksTranslators Swap Remove

A programmer writes a program in a high-level language. The program is translated by a compiler.

Explain why a compiler must translate the whole program before any of it can be executed.

[2 marks]
Mark scheme

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

  • The compiler produces object code/machine code for the whole program (1) so there is no complete executable until every line has been translated (1)
  • The compiler translates all the source code before producing the object code (1) so the program cannot start until translation has finished (1)
  • The compiler checks the whole program for errors during translation (1) so all of the source code must be read before an executable can be produced (1)

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

Allow 'in one go'/'all at once' for the translation point, but this does not earn the second mark unless it is linked to why the program cannot be executed until translation has finished.

A statement that the whole program is translated, with no linked reason about when the program can be executed, earns 1 mark only.

Do not accept 'a compiler is faster' or 'compiled code runs faster' on its own; this does not explain why translation must finish before execution.

Do not accept 'it translates and runs the program one line at a time', as this describes an interpreter.

Example answers and how they were marked
Full marks2/2

A compiler produces object code for the whole program, so there is no complete executable until every line has been translated.

Why: Object code for the whole program (1) linked to there being no complete executable until every line is translated (1).

Some marks1/2

A compiler translates the whole program in one go.

Why: Translation of the whole program only (1); no linked reason about when the program can be executed, so the second mark is not awarded.

No marks0/2

A compiler translates and runs the program one line at a time, so it stops when it finds an error.

Why: Confuses a compiler with an interpreter; nothing about translating the whole program before execution, so no creditworthy point.

4Explain2 marksTranslators Swap Remove

An interpreter translates a program one line at a time.

Explain why an interpreted program stops when it reaches a line that contains a syntax error.

[2 marks]
Mark scheme

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

  • The interpreter translates and executes each line in turn (1) so it cannot continue past a line it cannot translate (1)
  • The interpreter finds the error when it reaches that line (1) so it stops and displays an error message before later lines are executed (1)
  • Each line is translated just before it is executed (1) so a syntax error in that line prevents that translation/execution from happening (1)
  • The interpreter does not translate the whole program first (1) so it only discovers the error when that line is reached during execution (1)

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

Do not accept 'the program crashes' without saying that the interpreter cannot translate/execute the line.

Do not accept answers about how a compiler reports errors.

Example answers and how they were marked
Full marks2/2

The interpreter translates each line just before it executes it, so when it reaches the line with the syntax error it cannot translate that line and stops.

Why: Line-by-line translation (1) linked to being unable to translate the faulty line, so stopping (1).

Some marks1/2

The interpreter translates one line at a time, so it stops at the error.

Why: Line-by-line translation (1); 'stops at the error' repeats the outcome and does not explain why it cannot continue.

No marks0/2

It stops because the compiler reports all errors at the end.

Why: Describes a compiler, not an interpreter; no credit.

Questions by topic

5.3 Cybersecurity

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.