These are some of the programming tasks that I give to my GCSE students to practise their skills once they have mastered the basics. As it tends to suggest a solution, I rarely use PRIMM at this stage - I discuss possible solutions and techniques at the start of the lesson and recap techniques as necessary. I would encourage the more confident students to come up with their own solutions, possibly using techniques such as recursion and object-oriented programming.
Discussion before the task would include questions such as:
I have not included tasks from the OCR Coding Challenges, but I have included two from Advent of Code so that students don't need to log in to get the data files. I came up with a lot of these ideas myself, but I can't remember where some of them came from, so please let me know if any of them is yours and I'll credit you. Some solutions can be found on the programming examples page.
A lot of the tasks are described using a series of numbered points. The idea is that students start with number one and go as far as they are comfortable with. They will be familiar with this idea from Maths homeworks with Bronze, Silver and Gold questions.
There is also a Python guide for GCSE (aimed at OCR as it contains some ERL, but you can edit that out).
NB. Tasks marked with a † use concepts that students should recognise from GCSE Maths (although the quadratic formula might be higher-tier only).
These are some of my favourite tasks from other sites:
* if you're doing this in Python then you might want to change the task so that students are only required to check numbers up to 15. See this page on the performance of Python for further explanation.