Some types of maths problem are formulaic, such that there is a method which can be applied to systematically solve all problems of that type. (Real maths is not like this, but is significantly easier when you are able to solve such problems consistently and quickly.)

Choose a problem type and a difficulty level:

- Algebra:
- Combinatorics:
- Linear Algebra (Vectors & Matrices):
- Probability & Statistics:
- Propositional Logic:

Some advice:

- Numbers can be entered either as decimals (e.g. 3.14159) or fractions (e.g. 22/7). Decimals should be within 0.01% of the correct value - 5 significant figures should be enough, but be careful about compounded rounding errors. Fractions should be exact and in their simplest form. You might need to use a calculator; this site won't provide one.
- Booleans (true or false) can be entered upper- or lower-case as T, F, true, false, 1 or 0.
- To navigate using the keyboard, you can press tab to move between input boxes, or enter to check your answer.
- For some steps of some problems, you can enter the final answer directly and move on to the next step.
- Always write in numbers in the logical order (or the order dictated by the formula), even if it doesn't matter mathematically.
- If you have a better method or spot a trick to solve a problem more easily, it will probably not be permitted by this site. Rest assured you are smarter than a machine, but this particular machine doesn't want to know about it.
- If you are stuck on part (or all) of a problem, you can see the solution, or sometimes get a hint.
- The problems are random, so some will be easier or more difficult than their supposed difficulty level.
- Each problem has a link at the top so you can share (or otherwise point at) that particular problem. This is achieved by setting the random seed, and the problem generation algorithms may change in future, so it is not guaranteed that these links will permanently point to the same problem.

This site uses PHP, jQuery and MathJax. It may not work on all browsers.