Math Test

Easy level

This level has a single operation per question and the terms are at most 4 digits (including decimals). All answers have 4 digits or less. This is (much) simpler than a real trading test. If you want you can also try this level as a test (posts to !) or set up a custom exercise.

Medium level

This level has a maximum of 4 operations per question and all terms are at most 5 digits including the decimal part. All answers have 5 digits or less. This is about the level of some trading tests. If you want you can also try this level as a test (posts to !) or set up a custom exercise.

Hard level

This level has a maximum of 6 operations per question and all terms are at most 6 digits including the decimal part. All answers have 5 digits or less. This is beyond the level of most trading tests. If you want you can also try this level as a test (posts to !) or set up a custom exercise.

250 ) { $_GET['questionCount'] = 80; } if( ! isset( $_GET['maxTermLength'] ) || ! is_numeric( $_GET['maxTermLength'] ) || $_GET['maxTermLength'] <= 0 || $_GET['maxTermLength'] > 20 ) { $_GET['maxTermLength'] = 6; } if( ! isset( $_GET['maxTermDecimalLength'] ) || ! is_numeric( $_GET['maxTermDecimalLength'] ) || $_GET['maxTermDecimalLength'] <= 0 || $_GET['maxTermDecimalLength'] > 20 ) { $_GET['maxTermDecimalLength'] = 3; } if( ! isset( $_GET['maxAnswerLength'] ) || ! is_numeric( $_GET['maxAnswerLength'] ) || $_GET['maxAnswerLength'] <= 0 || $_GET['maxAnswerLength'] > 20 ) { $_GET['maxAnswerLength'] = 4; } if( ! isset( $_GET['maxAnswerDecimalLength'] ) || ! is_numeric( $_GET['maxAnswerDecimalLength'] ) || $_GET['maxAnswerDecimalLength'] < 0 || $_GET['maxAnswerDecimalLength'] > 20 ) { $_GET['maxAnswerDecimalLength'] = 3; } if( ! isset( $_GET['minOperations'] ) || ! is_numeric( $_GET['minOperations'] ) || $_GET['minOperations'] <= 0 || $_GET['minOperations'] > 9 ) { $_GET['minOperations'] = 1; } if( ! isset( $_GET['maxOperations'] ) || ! is_numeric( $_GET['maxOperations'] ) || $_GET['maxOperations'] <= 0 || $_GET['maxOperations'] > 9 ) { $_GET['maxOperations'] = 4; } if( $_GET['minOperations'] > $_GET['maxOperations'] ) { $_GET['minOperations'] = 1; $_GET['maxOperations'] = 4; } if( ! isset( $_GET['mode'] ) || ( //$_GET['mode'] != 'exam' && $_GET['mode'] != 'test' && $_GET['mode'] != 'practice' ) ) { $_GET['mode'] = 'practice'; } if( ! isset( $_GET['useVariableInteger'] ) && ! isset( $_GET['useVariableDouble'] ) ) { $_GET['useVariableInteger'] = 'on'; $_GET['useVariableDouble'] = 'on'; } if( ! isset( $_GET['useOperatorAdd'] ) && ! isset( $_GET['useOperatorSubtract'] ) && ! isset( $_GET['useOperatorMultiply'] ) && ! isset( $_GET['useOperatorDivide'] ) ) { $_GET['useOperatorAdd'] = 'on'; $_GET['useOperatorSubtract'] = 'on'; $_GET['useOperatorMultiply'] = 'on'; $_GET['useOperatorDivide'] = 'on'; } // FIXME this prevent do..while deadlocks below but it's not nice if( ! isset( $_GET['useVariableInteger'] ) && isset( $_GET['useVariableDouble'] ) && ! isset( $_GET['useVariableFactor'] ) && ! isset( $_GET['useOperatorAdd'] ) && ! isset( $_GET['useOperatorSubtract'] ) && isset( $_GET['useOperatorMultiply'] ) && ! isset( $_GET['useOperatorDivide'] ) && ! isset( $_GET['optimizeSolvability'] ) ) { die( 'Impossible combination to guarantee easy exercises, disable optimizeSolvability if you really want this.' ); } // Show setup? if( isset( $_GET['showSetup'] ) ) { ?> Set up exercise

In practice mode the answers are selectable on the same page and no scoring will be done. In test mode you need to click a "Finished" button and your score will be calculated.

Term & answer sizes
(total # of digits, including fraction)
(# of digits after ., if variable is a double)
(total # of digits)
(# of digits after ., if used)

Operations

Variables
(This includes floats)

Operators

Optimizations
Limits complexity in some situations.
Guarantee operator changing & no arbitragable values.


Scoring

You get one point for every correct answer. Deduct one point for each error. If you skip a question or run out of time in a timed test, all following questions are not used in your score. Time yourself to 6 seconds per question. Generally you need to pass 55 out of 80 questions or ~70% of the maximum score, but higher is always better.

Manual

The answer to the test will be printed right next to it in the site's background color. You can use CTRL+A, Command+A or use the mouse to select all text on this page.

Questions
1) 2 * 6 12
2) -7 - -0.6 -6.4
3) 0.45 + 33.57 34.02
4) -33 - 9 -42
5) 6.28 / -4 -1.57
6) -1 - -68 67
7) -41 + 99.4 58.4
8) 915 - -1 916
9) 9.8 - 0.005 9.795
10) 0.057 - 0.005 0.052
11) 0.01 - 2 -1.99
12) -552.9 / -10 55.29
13) 19 * 79 1501
14) -53.6 - -468 414.4
15) -80 + -29 -109
16) 0.6 - 0.003 0.597
17) 78 / 3 26
18) -92 - -1 -91
19) 60 * 3.76 225.6
20) -2.6 + 170 167.4
21) 1689 / 50 33.78
22) 579 + -0.9 578.1
23) 230 + 0.8 230.8
24) 0.74 / -1 -0.74
25) -0.978 + 3 2.022
26) -79 * -5 395
27) -0.01 + 0.615 0.605
28) 9 + 618 627
29) 5 * 47 235
30) 1 + -0.13 0.87
31) 1 + 2 3
32) 7 - -4 11
33) 77 + -0.61 76.39
34) 316 - 6.1 309.9
35) 4888 + 1169 6057
36) 51 / -3 -17
37) 2.921 - 0.893 2.028
38) -0.8 - 9.6 -10.4
39) 7.95 - -0.057 8.007
40) 70 * 0.27 18.9
41) 3.16 / -0.008 -395
42) -6.79 + 0.06 -6.73
43) 1 + -8 -7
44) -4.6 + 8 3.4
45) -6 + 19 13
46) -6732 + 9024 2292
47) 0.6 / 0.003 200
48) 9668 - 9200 468
49) 0.591 / 0.01 59.1
50) -89 + 44 -45
51) -6.29 / -2 3.145
52) 1 + 7.9 8.9
53) 0.09 - 0.06 0.03
54) 0.1 + 0.4 0.5
55) 413 + 1254 1667
56) 0.06 + 0.04 0.1
57) 890 * 1 890
58) 5 + 73.6 78.6
59) 4 + 38.3 42.3
60) 53 + -5.67 47.33
61) 5 + 94 99
62) 28.68 - 16 12.68
63) -191 + 33 -158
64) 129 / -0.258 -500
65) 3 + 92 95
66) 1.24 * 22 27.28
67) 7 + 6 13
68) 0.05 / 0.5 0.1
69) 78.3 - 4.9 73.4
70) 74 + -4.07 69.93
71) 4 - -57 61
72) -49 + 3 -46
73) 7 * 24 168
74) -90 - 29 -119
75) 0.007 + 5 5.007
76) -25.5 * -66 1683
77) 57 - 0.09 56.91
78) -8.6 * 4 -34.4
79) 45 + -78 -33
80) 45 * 9.06 407.7


Quick links:

Practice: Easy | Medium | Hard
Test: Easy | Medium | Hard
Customized