Computer Science · Oct / Nov 2023 · Paper 22 · Question 4
0478
As printed in the paper
The question as text
An algorithm has been written in pseudocode to allow the names of 50 cities and their countries to be entered and stored in a two‑dimensional (2D) array. The contents of the array are then output. 01 DECLARE City ARRAY[1:50, 1:2] OF BOOLEAN 02 DECLARE Count : INTEGER 03 DECLARE Out : INTEGER 04 Count 1 05 IF 06 OUTPUT "Enter the name of the city" 07 INPUT City[Count, 2] 08 OUTPUT "Enter the name of the country" 09 INPUT City[Count, 2] 10 Count Count + 1 11 UNTIL Count = 50 12 FOR Out 1 TO 1 13 OUTPUT "The city ", City[Out, 1], " is in ", City[Out, 2] 14 NEXT Out
Read automatically from the paper; the printed page above is exact.
Show the answer and mark scheme
4(a)[4]
One mark per mark point, max four
MP1
Line 01 / DECLARE City ARRAY[1:50, 1:2] OF BOOLEAN should be DECLARE City : ARRAY[1:50, 1:2] OF STRING Line 05 / IF should be REPEAT
MP2
Line 07 / INPUT City[Count, 2]should be INPUT
City[Count, 1]
MP3
Line 11 / UNTIL Count = 50 // Line 04 / Count ← 1 AND Line 10 / Count ← Count + 1 should be UNTIL Count = 51 / UNTIL Count > 50 // Line 04 / Count ← 0 AND move Line 10 to beginning of loop / Line 06
MP4
Line 12 / FOR Out ← 1 TO 1 should be FOR Out ← 1 TO 50 Correct algorithm:
01 DECLARE City : ARRAY[1:50, 1:2] OF STRING
02 DECLARE Count : INTEGER
03 DECLARE Out : INTEGER
04 Count ← 1
05 REPEAT
06 OUTPUT "Enter the name of the city"
07 INPUT City[Count, 1]
08 OUTPUT "Enter the name of the country" 09 INPUT City[Count, 2]
10 Count ← Count + 1
11 UNTIL Count > 50
12 FOR Out ← 1 TO 50
13 OUTPUT "The city ", City[Out, 1], " is in ", City[Out, 2]
14 NEXT Out
4(b)[5]
One mark per mark point, max five
MP1
add an input (and prompt to ask) for the country to be searched MP2
…between lines 11 and 12
MP3
…using a new variable for the input
MP4
Add an IF statement to check if the current Country array element matches the country being searched
MP5
…between lines 12 and 13
MP6
…if it does, allow the output in line 13 // the output in line 13 should be after a THEN
MP7
If it does not, check the next element.
Make a free account to save your answers and see your weak topics and ask the AI why a wrong answer is wrong.

