Skip to content
IGCSE Computer Science 0478 · Topic 7

Algorithm design and problem-solving: past paper questions

169 real questionsasked in 10 of the last 10 exam series2019–2026usually: Write, Identify, Explain, Complete, Describe

Real questions on algorithm design and problem-solving

The newest 20 of 169 written questions. Open one to see it on the real paper.

  1. 0478/21 · May/June 2026 · Q1[1]

    Tick (3) one box to identify the type of validation check to test whether a number entered into a computer system is between two set values. A length check B presence check C type check

    See it on the paper →
  2. 0478/21 · May/June 2026 · Q5d[4]

    Identify and describe verification checks that could be applied to the inputs of the first name and the last name of the user.

    See it on the paper →
  3. 0478/21 · May/June 2026 · Q6[4]

    Give programming examples for a count‑controlled loop and a post‑condition loop. Describe each of the loops. count‑controlled loop example description post‑condition loop example description

    See it on the paper →
  4. 0478/21 · May/June 2026 · Q7[4]

    An algorithm has been written in pseudocode for a user to repeatedly input positive whole numbers and store them in an array called Values[] until –1 is input or until the array is full. The algorithm outputs the average of the numbers to 2 decimal places. 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 DECLARE Coun...

    See it on the paper →
  5. 0478/21 · May/June 2026 · Q10a[6]

    Draw a flowchart to input six whole numbers and output the highest. You do not need to validate the inputs. START

    See it on the paper →
  6. 0478/22 · May/June 2026 · Q1[1]

    Tick (3) one box to complete the following sentence. Two types of pseudocode statements used for iteration are A CASE and IF B FOR … NEXT and IF C FOR … NEXT and WHILE … DO … ENDWHILE 1

    See it on the paper →
  7. 0478/22 · May/June 2026 · Q3a(i)[1]

    A check to make sure that data has been input and not left blank.

    See it on the paper →
  8. 0478/22 · May/June 2026 · Q3a(ii)[1]

    A value placed at the end of a sequence of numbers in the code. The value is calculated from all the other values before it.

    See it on the paper →
  9. 0478/22 · May/June 2026 · Q3b[3]

    Explain the purpose of a format check and give an example of where it could be used. purpose example

    See it on the paper →
  10. 0478/22 · May/June 2026 · Q3c[6]

    Write the pseudocode for an algorithm to perform a validation check on each number as it is input, using the following criteria: • • • • Input one number at a time. If the number is a whole number, store it in the current element of array Accepted[] If the number is not a whole number, ask for it to be input again unti...

    See it on the paper →
  11. 0478/22 · May/June 2026 · Q4[6]

    The program development life cycle is split into several stages. Outline what happens during the coding and testing stages of the program development life cycle. coding testing Turn over

    See it on the paper →
  12. 0478/22 · May/June 2026 · Q5b[1]

    State the name given to this type of algorithm.

    See it on the paper →
  13. 0478/22 · May/June 2026 · Q5c[2]

    The algorithm stops if the account number is not found in the array. Write the pseudocode statements to change the algorithm to inform the user that the account number has not been found in the array. Clearly state where in the original algorithm your new statements would be placed. Do not rewrite the whole algorithm.

    See it on the paper →
  14. 0478/23 · May/June 2026 · Q3a(i)[1]

    Data that falls within the accepted parameters of a validation check and is accepted.

    See it on the paper →
  15. 0478/23 · May/June 2026 · Q3a(ii)[1]

    Data that is the highest or lowest value to be accepted.

    See it on the paper →
  16. 0478/23 · May/June 2026 · Q3b[3]

    Explain the purpose of a check digit and give an example of where it could be used. purpose

    See it on the paper →
  17. 0478/23 · May/June 2026 · Q3c[6]

    Write the pseudocode for an algorithm to perform a validation check and a verification check on a new password to meet the following criteria: 1 2 3 4 5 Input a new password. If the password is less than 10 characters in length, ask for it to be input again until it is at least 10 characters in length. If the password...

    See it on the paper →
  18. 0478/23 · May/June 2026 · Q4a[4]

    Identify the line numbers of four errors in the pseudocode and suggest corrections. error 1 line number correction error 2 line number correction error 3 line number correction error 4 line number correction

    See it on the paper →
  19. 0478/23 · May/June 2026 · Q4b(i)[5]

    Write the pseudocode statements to show how you would change the algorithm so that only times in the correct range could be input. The time taken to finish the race needs to be input again until valid data is input. Clearly state where in the original algorithm your new statements would be placed. Do not rewrite the wh...

    See it on the paper →
  20. 0478/23 · May/June 2026 · Q4b(ii)[1]

    Identify one other possible problem with the algorithm.

    See it on the paper →

What examiners said

Comprehensive responses • Many candidates traced the algorithm and completed the trace table. • Some candidates completed the trace table with no errors. Limited responses • Some candidates need to follow the algorithm to be traced and complete the table as they go, until the algorithm completes.

— Examiner report, February/March 2026, 0478/22 Q6(a) (Cambridge)

Comprehensive responses • Most candidates demonstrating understanding of the purpose of the algorithm represented by the given flowchart. Limited responses • Some candidates did not give enough detail in their response to completely cover the purpose of the algorithm. • Some candidates did not give a sufficiently detailed response to match the fact that this was an ‘explain’ question.

— Examiner report, February/March 2026, 0478/22 Q6(b) (Cambridge)

Comprehensive responses • Some candidates recognised that input prompts and output messages would make the program represented by the algorithm more user friendly. Limited responses • Many candidates confused the requirements of this question with a question about maintainable programs and gave inappropriate answers such as writing comments in the program.

— Examiner report, February/March 2026, 0478/22 Q6(c) (Cambridge)

Past papers, syllabus and examiner reports © UCLES (Cambridge University Press & Assessment). Questions are matched to topics from the official syllabus. AssessPro is independent and not endorsed by Cambridge.

Algorithm design and problem-solving — IGCSE Computer Science 0478 past paper questions | AssessPro