Skip to main content
O-LevelComputer ScienceAlgorithm design and problem-solving2210/22 · Oct/Nov 2023 · Q49 Marks

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

  1. (a)Identify the four errors in the pseudocode and suggest corrections. Error 1 Correction Error 2 Correction Error 3 Correction Error 4 Correction[4]
  2. (b)Describe the changes you should make to the corrected algorithm to allow the name of a country to be input and to display only the stored cities from that country. You do not need to rewrite the algorithm.[5]

Mark scheme

Marking points from the official mark scheme (Oct/Nov 2023). The mark or mark type is shown in brackets.

  1. [4] One mark per mark point, max four
  2. 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
  3. MP2 Line 07 / INPUT City[Count, 2] should be INPUT City[Count, 1]
  4. 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
  5. MP4 Line 12/ FOR Out ← 1 TO 1 should be FOR Out ← 1 TO 50
  6. [5] One mark per mark point, max five
  7. MP1 add an input (and prompt to ask) for the country to be searched
  8. MP2 ...between lines 11 and 12
  9. MP3 ...using a new variable for the input
  10. MP4 Add an IF statement to check if the current Country array element matches the country being searched
  11. MP5 ...between lines 12 and 13
  12. MP6 ...if it does, allow the output in line 13 // the output in line 13 should be after a THEN
  13. MP7 If it does not, check the next element.

Write your answer and get it marked

On Oracle Prep you can write or photograph your own answer and have it marked by AI against this mark scheme, with feedback on what you missed.

Sign up free →

About this question

Topic
Algorithm design and problem-solving, O-Level Computer Science (syllabus 2210). Structured question, 9 marks.
Source
O-Level Computer Science, Oct/Nov 2023 Paper 2 Variant 2, question 4.

Questions and mark schemes are from past examination papers and remain the copyright of the exam board. How Oracle Prep builds its content

Related Computer Science questions

© 2026 Oracle Prep