# Problem Sets

Problem sets are designed to challenge you to **apply** your knowledge of computer science. Problem sets can be completed in many different programming languages. All problem sets are calculated as summative grades. Click here to understand how problem sets are assessed

Problem Set | Difficulty Level | Notes |
---|---|---|

Example Problem Set | Average | None |

Recognize an image | Difficult | None |

Modelling a simple system | Average | Part 1, creating a model of an ant |

Modelling and simulating a more complex system | Average | Part 2, creating a model of an ant |

CPU simulation | Average | This is a computer organization problem set |

Contact tracing: part 1 | Average | This is a system design problem-set |

Greatest common denominator | Average | None |

Contact tracing: part 2 | Average | None |

Probability problem | Average | None |

Testing schedule | Average | None |

Random name generator | Average | None |

Rotate array | Average | None |

Recurring letter | Beginner | None |

Middle letter | Beginner | None |

Url shortener | Beginner | None |

Shortest word | Beginner | None |

Factorial | Beginner | None |

Classic warm up! | Beginner | None |

Towers of Hanoi | Difficult | None |

Do these numbers add up? | Average | None |

Palindrome | Average | None |

A compression problem | Average | None |

Convert from plain text to ascii | Average | None |

Convert to binary from base-10 | Average | None |

Sport team lockers! | Average | None |

Parking garage problem | Average | This solution is in pseudocode |

Dice rolling | Average | None |

Modeling and Simulation - naughty or nice | Average | None |

Reverse list of last names | Average | None |

Find the spelling errors | Difficult | This is for advanced students only |

Add numbers in a collection | Beginner | None |

Friend finder | Difficult | None |

Game of Life | Average | This is a classic! |

Extract text from a PDF | Difficult | None |

Leaderboard | Average | None |

tic tac toe | Average | None |

In Flight Entertainment | Average | None |

Use google API to recognize an image | Difficult | None |

11th grade retreat | Average | None |

Facial recognition | Expert | None |

Bracket validator | Average | None |

Select a random student | Average | None |

Create an email address from a name | Average | None |

No more than 3 exams | Difficult | None |

Secret Santa | Average | None |

my priorities, my time | Average | None |

chess | Difficult | None |

Strings: making HTML tags | Average | None |

simple password rules | Average | None |

mean, median, mode and other statistical functions | Difficult | There are three parts to this problem set. 2 are beginner, but 1 is very challenging :-) |

Email validator | Beginner | None |

making a small grid | Average | None |

moving around a small grid | Average | This is the foundation for many possible games you can make in Python!! |

Guess a number | Average | There are easy ways to extend this fun little guessing game |

Simple calculator | Beginner | None |

Difficulty Level Key:*Beginner:this problem set is good for beginners *Advanced / Difficult:this problem set should be challenging *Expert:This problem set is very challenging for most students (but it can be solved).

Use an idea, equation, principle, theory or law in relation to a given problem or issue.

Produce a plan, simulation or model.