Menu

Edexcel GCSE Computer Science (1CP2) Exam Questions

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

3 questions · 5 marks

Pick again
Print
1Multiple choice1 markTranslators Swap Remove

A program contains a syntax error. An interpreter reports the error as soon as it finds it.

Identify when a compiler reports the syntax errors it finds in the source code.

[1 mark]
  • AAfter each line is translated
  • BAt the end of translating the program
  • CWhen the first error is found
  • DWhen the object code is run
Mark scheme
  • B At the end of translating the program (1)
  • The only correct answer is B. The correct answer is at the end of translating the program.
  • A is not correct because a compiler translates the whole program and does not report an error after each line; reporting after each line is how an interpreter behaves
  • C is not correct because a compiler does not stop at the first error; it finishes translating and reports the errors it finds at the end
  • D is not correct because syntax errors are found during translation, before the object code is run
Example answers and how they were marked
Full marks1/1

B At the end of translating the program

Why: Chosen option states that errors are reported once the whole program has been translated, as a compiler does (1).

No marks0/1

A After each line is translated

Why: Near miss: reporting an error after each line is the behaviour of an interpreter, not a compiler, so no mark.

No marks0/1

C When the first error is found

Why: Misconception that a compiler stops and reports at the first error it finds; a compiler reports the errors at the end of translation, so no mark.

2Explain2 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.

3Explain2 marksTranslators Swap Remove

A program can be translated by a compiler or by an interpreter.

Explain why a compiled program usually runs faster than an interpreted program.

[2 marks]
Mark scheme

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

  • The compiler translates the whole program into machine code before it is run (1) so no translation is needed while the program is executing (1)
  • The machine code/object code is already produced before execution (1) so the CPU can carry out the instructions directly without translating them (1)
  • The compiled program does not need an interpreter at run time (1) so no time is spent translating each line before it is executed (1)

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

A statement that translation happens before execution, with no linked reason for faster running, earns 1 mark only.

Do not accept 'faster to run' or 'quicker' on its own without a reason linked to translation before/during execution.

Do not accept 'compiled code is optimised' or 'compilation takes less time' without linking this to translation before execution/at run time.

Do not accept answers about the compiler being installed or available.

The question asks why a compiled program usually runs faster, so answers must refer to when translation happens, not just general performance claims.

Example answers and how they were marked
Full marks2/2

The compiler translates the whole program into machine code before it is run, so the CPU does not have to translate each line during execution.

Why: Translation before execution (1) linked to no translation needed during the run, so faster (1).

Some marks1/2

The compiler translates the whole program first.

Why: Pre-translation point (1) but no link to faster running.

No marks0/2

A compiled program runs faster because the compiler is installed on the computer.

Why: Compiler being installed does not make execution faster; no credit.

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.