AQA A-Level Computer Science AS Paper 1, June 2025
Every question from AQA A-Level Computer Science AS Paper 1, June 2025 (7516): 17 questions, 75 marks, each with its mark scheme and topic.
- Question 1 3 marks
Complete the trace table for the given algorithm that traverses array-based data structures representing a tree using a binary string input.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.4 Theory of computation · 4.1.1 Programming · 4.2.1 Data structures and abstract data types · 4.4.1 Abstraction and automation
- Question 2 2 marks
Explain why two pseudo-code blocks, one using a WHILE loop and the other using a REPEAT UNTIL loop, operate differently when the inputs are negative numbers.
4.1 Fundamentals of programming · 4.1.1 Programming
- Question 3 10 marks
Implement a palindrome-checking algorithm given in pseudo-code into program code, test it with provided test data, and state one reason why the algorithm is inefficient.
4.1 Fundamentals of programming · 4.4 Theory of computation · 4.1.1 Programming · 4.4.1 Abstraction and automation
- Question 4 6 marks
Define the term subroutine, state three advantages of using subroutines, and describe how parameters improve their effectiveness.
4.1 Fundamentals of programming · 4.1.1 Programming
- Question 5 1 mark
Explain what is meant by data abstraction.
4.4 Theory of computation · 4.4.1 Abstraction and automation
- Question 6 1 mark
State the identifier of a variable in the Skeleton Program that is used to hold one of only two possible values.
4.1 Fundamentals of programming · 4.1.1 Programming
- Question 7 1 mark
State the identifier of a subroutine in the Skeleton Program that uses nested indefinite iteration.
4.1 Fundamentals of programming · 4.1.1 Programming
- Question 8 3 marks
Identify a subroutine in the Skeleton Program using exception handling and explain why exception handling is used within it.
4.1 Fundamentals of programming · 4.1.1 Programming
- Question 9 2 marks
State the identifiers of data structures from the Skeleton Program that store values of more than one data type and only one built-in data type, respectively.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.1.1 Programming · 4.2.1 Data structures and abstract data types
- Question 10 4 marks
Answer questions about the structure, representation, and development stage of a hierarchy chart for a Skeleton Program.
4.1 Fundamentals of programming · 4.1.2 Programming paradigms · 4.1.1 Programming
- Question 11 2 marks
Explain why it is necessary to check that the value stored at the pirate's position is equal to PIRATES before updating it to SAND in the Move subroutine.
4.1 Fundamentals of programming · 4.4 Theory of computation · 4.1.1 Programming · 4.4.1 Abstraction and automation
- Question 12 3 marks
Describe one similarity and two differences between the FOR loop used for direction 'E' and direction 'W' in subroutine CheckPath.
4.1 Fundamentals of programming · 4.4 Theory of computation · 4.1.1 Programming · 4.4.1 Abstraction and automation
- Question 13 3 marks
Explain why it is sometimes necessary to set ValidDirection to false after it has been set to true by calling CheckDirection in the subroutine PirateWalks.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.4 Theory of computation · 4.1.1 Programming · 4.2.1 Data structures and abstract data types · 4.4.1 Abstraction and automation
- Question 14 4 marks
Describe the conditions that cause the game to end and give pirate actions that increase and decrease the score based on the skeleton program.
4.1 Fundamentals of programming · 4.4 Theory of computation · 4.1.1 Programming · 4.4.1 Abstraction and automation
- Question 15 5 marks
Modify the Skeleton Program to record and display the total walking time for the pirate, adding a WalkTime field to PirateRecord and updating subroutines accordingly.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.13 Systematic approach to problem solving · 4.1.1 Programming · 4.13.1 Aspects of software development
- Question 16 12 marks
Amend the subroutine FindLandingPlace in the Skeleton Program to allow the user to select an alternative beach landing site, validating that the chosen coordinates represent a beach, and provide test evidence via screen captures.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.13 Systematic approach to problem solving · 4.1.1 Programming · 4.2.1 Data structures and abstract data types · 4.13.1 Aspects of software development
- Question 17 13 marks
Extend the Skeleton Program by writing subroutines WestOfHut and GetClue, modifying PirateWalks, and providing a screenshot of test execution.
4.1 Fundamentals of programming · 4.2 Fundamentals of data structures · 4.13 Systematic approach to problem solving · 4.1.1 Programming · 4.2.1 Data structures and abstract data types · 4.13.1 Aspects of software development