An inventory system coordinates a sliding storage grid of numbered boxes. The Python program shown below uses the subroutines described in the Subroutines table.
| Subroutine | Purpose |
|---|---|
getItem(row, column) | Returns the number of the item in position (row, column). If the space is empty, it returns 0. |
slide(row, column) | Slides the item at position (row, column) into an adjacent empty space (value 0), if one exists. |
showGrid() | Displays the grid showing the current position of each item. |
if getItem(0, 2) == 0:
slide(1, 2)
if getItem(1, 2) == 0:
slide(1, 1)
showGrid()
The program runs on the initial board state shown in the grid below.
| Column 0 | Column 1 | Column 2 | |
|---|---|---|---|
| Row 0 | 5 | 9 | |
| Row 1 | 3 | 1 | 4 |
| Row 2 | 8 | 2 | 7 |
(Note: The blank cell at Row 0, Column 2 represents an empty space.)
Complete the grid below to show the positions of the numbered items after the Python program is run.
298 exam-style questions on AQA GCSE Computer Science Programming concepts. Each one has a worked solution and a mark scheme showing where the marks go.