General Help, Resources & Advice
If you are struggling, the following resources might be of use:
You can also scroll down for specific help for the IGCSE & O-Level 15 marker
- Official A-Level pseudocode guide
- IGCSE & O-Level Syllabus - pseudocode is on page 33
- Detailed tutorials with 100s of example/practice questions/solutions
- The 100s of demo programs on the site (accessed via dropdown program box, CTRL + SHIFT + RIGHT/LEFT (next/previous program))
- A list/tutorials/code examples of common pseudocode tasks they ask in exam questions
For more immediate help, the following Discord groups are probably the best place to get help:
The following playlists might also be useful:
IGCSE / O-Level Pseudocode - 2 Full Tutorials & Past Paper Pseudocode Questions/15 Markers
IGCSE & O-Level - Full Solved Papers
AS - Full Pseudocode Tutorials & Past Paper Pseudocode Questions
AS & A2 - Full Syllabus Content (work in progress...)
AS - Full Solved Papers
A2 - Full Solved Papers
IGCSE & O-Level 15 Marker Help
A lot of people often ask for help regarding the 15 marker, especially since many students would have never done programming before this course
Of course, as well as the groups, video playlists above etc, there is also additional advice I'd give:
- Spend 3-5 minutes planning, writing bullet points etc if you need to - ensure you know what loops, selection statements (IF/CASE), potentially additional modules etc you will need before you start writing. If you have a solid plan of how to solve it in your head, you should be able to write it more quickly, face less stumbling blocks and be less likely to write parts of your code in the wrong order, hence have to waste time/struggle trying to fix it
- Ensure you understand the structure of the data in arrays (especially for 2D arrays) - write a row of sample data/column headings etc if you need too. Don't mix up the rows & columns (rows first, then columns)
- Of course, try all the past paper questions - attempt the questions again if you did badly
- Ask (nicely) for people to give feedback on your answers in e.g. the Discord groups listed above - and if you ask for feedback, try to repay that by giving feedback for others too
- Can also ask AI to give feedback, especially if you want more instant feedback (don't trust the syntax etc 100%...but for the logic itself, it's usually good)
- Make the code clear - indentation, comments, suitable variable names, can create your own modules etc
- Depending on how quickly you can do the rest of the paper, some people like to do the 15 marker first, to avoid running out of time at the end - that's up to you. For some people, this can also backfire...if they try the 15 marker first, struggle with it, then they might be stressed for the rest of the paper. So this the order you attempt the questions is more personal preference
- Don't just practice the 15 markers - try to also get a wider range of programming practice so you are more confident about a variety of question types since you're more likely to have encountered a similar question before (e.g. for people who had created grid/board games before, the 15 marker like this would have been easier...while for many students who'd never seen such a question, they were completely lost). For example, there is the challenges section on this site, but you can find plenty of other programming questions on other sites (e.g. search "easy programming practice questions") or even for questions in specific languages, then try them in pseudocode
- As above, try not to learn pseudocode in 1 month before the exam - if possible, it would be good to spend at least 3+ months learning. It's better to do a small amount of practice each week for a year, than do a lot all at the end
- Obviously be comfortable using the basic constructs, know the syntax etc - the 3 loops (FOR, WHILE, REPEAT UNTIL), the 2 selection statements (IF, CASE) etc
- Think of and create your own programs/projects that interest you (you can have something to be proud of once finished, share with your friends/classmates and will be more motivated if making something that interests you) - making bigger programs (e.g. implementing simple board games like noughts & crosses) will also help you improve you planning/organisation with experience of what is good & bad practice when creating these larger programs/more complex programs. And, of course, if you try and can create these more difficult programs - the exam questions should seem easier in comparison!
As for specific topics, I'd once again point to this link - for 15 markers, the usual things that come up are as follows, so ensure you can create programs to do all of them independantly - then the 15 marker are just combining multiple of these building blocks into a single program:
- Get & validate user input into both variables and arrays (range check, length check, maybe a simple format check etc)
- Display a user menu
- Get/calculate the min, max, total and average for an array and/or in loop
- Perform linear search on 1D and 2D arrays
- Perform bubble sort on 1D and 2D arrays
- Create functions and procedures
- Round to a given number of decimal places
- Generate a random number in a range
- Loop through to output a 1D and 2D array
- Use DIV and MOD to convert a seat number to a specific row/column, convert (e.g. 200) minutes into hours and minutes, determine how many whole slices of pizza each person in a group gets, then how many pieces are left over etc
- Read from & write to files (hasn't been asked yet for 15 markers - but it's in the syllabus, so they could)