AQA GCSE Computer Science Paper 1 (1A), June 2025

Every question from AQA GCSE Computer Science Paper 1 (1A), June 2025 (8525): 11 questions, 90 marks, each with its mark scheme and topic.

Original question paper

  1. Question 1 7 marks

    Analyse a C# program containing a while loop by identifying an arithmetic operation, false statement, relational operator, and completing a trace table.

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.2 Programming concepts · 3.2.3 Arithmetic operations in a programming language · 3.2.4 Relational operations in a programming language

  2. Question 2 7 marks

    Complete missing lines of a C# program checking divisibility for a loyalty scheme, and write a program to calculate the total value of free items given out.

    3.2 Programming · 3.2.2 Programming concepts · 3.2.3 Arithmetic operations in a programming language · 3.2.4 Relational operations in a programming language · 3.2.7 Input/output

  3. Question 3 8 marks

    Write a C# program to calculate and output the total cost of a netball coaching session based on tiered pricing rules depending on the number of students.

    3.2 Programming · 3.2.1 Data types · 3.2.2 Programming concepts · 3.2.3 Arithmetic operations in a programming language · 3.2.4 Relational operations in a programming language · 3.2.7 Input/output

  4. Question 4 13 marks

    Validate user input using string length checks, write a C# validation routine with iteration, identify types and examples of test data, and complete a username generation flowchart.

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.2 Programming concepts · 3.2.7 Input/output · 3.2.8 String handling operations in a programming language · 3.2.11 Robust and secure programming

  5. Question 5 8 marks

    Explain data types and rewrite a C# program calculating the sum of five numbers using an iteration structure.

    3.2 Programming · 3.2.1 Data types · 3.2.2 Programming concepts · 3.2.3 Arithmetic operations in a programming language · 3.2.7 Input/output

  6. Question 6 10 marks

    Demonstrate bubble sort and merge sort on a list of numbers, compare the two sorting algorithms, and explain why binary search is preferable to linear search for a large sorted array.

    3.1 Fundamentals of algorithms · 3.1.3 Searching algorithms · 3.1.4 Sorting algorithms

  7. Question 7 7 marks

    Analyze a subroutine using the MOD operator to determine even or odd numbers, trace its outputs and return value, identify its parameter, and state characteristics of structured programming.

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.3 Arithmetic operations in a programming language · 3.2.10 Structured programming and subroutines (procedures and functions)

  8. Question 8 6 marks

    Complete a trace table for an algorithm that processes two binary strings using logical operators and string concatenation, and explain why the loop boundary is indexed up to length minus one.

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.2 Programming concepts · 3.2.5 Boolean operations in a programming language · 3.2.8 String handling operations in a programming language

  9. Question 9 2 marks

    Identify which of the five given pseudo-code algorithms correctly calculate the total of the five values in an array.

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.2 Programming concepts · 3.2.6 Data structures

  10. Question 10 8 marks

    Instantiate and access a record data structure in pseudo-code, and write a C# program to find and output the minimum value in an array.

    3.2 Programming · 3.2.2 Programming concepts · 3.2.4 Relational operations in a programming language · 3.2.6 Data structures · 3.2.7 Input/output

  11. Question 11 14 marks

    Trace a C# subroutine for a word-guessing game (parts 11.1–11.4) and write an extended C# program to manage game turns, subroutine calls, and win/loss conditions (part 11.5).

    3.1 Fundamentals of algorithms · 3.2 Programming · 3.1.1 Representing algorithms · 3.2.2 Programming concepts · 3.2.7 Input/output · 3.2.8 String handling operations in a programming language · 3.2.10 Structured programming and subroutines (procedures and functions)

More AQA GCSE Computer Science papers