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 - 0.006 1.994
2) 0.08 * 5 0.4
3) 1 - -9.45 10.45
4) 0.009 + 3.03 3.039
5) 950 - -3024 3974
6) 1 + 0.93 1.93
7) -0.5 - -481.9 481.4
8) -9 * -6 54
9) 0.429 + -0.036 0.393
10) 44.91 + 2.75 47.66
11) 0.08 - 0.7 -0.62
12) 6 + 0.009 6.009
13) -0.02 * 5 -0.1
14) 0.5 - -0.865 1.365
15) -2 - -651 649
16) 0.05 + 0.059 0.109
17) 0.54 / -0.08 -6.75
18) 5 - -0.4 5.4
19) 454.1 + 23.6 477.7
20) 526 * -0.005 -2.63
21) -58.1 - 5 -63.1
22) -7 / -1 7
23) 3326 - 67 3259
24) 80 * 8 640
25) -0.8 / 0.05 -16
26) 9.429 - 0.1 9.329
27) 84.9 + 0.06 84.96
28) 1 * 0.009 0.009
29) -2 * -0.78 1.56
30) 199 + -20 179
31) 0.89 - 0.58 0.31
32) 0.3 * 9 2.7
33) 52 + -8 44
34) -0.004 - -5 4.996
35) 7469 + 881 8350
36) -0.003 - -0.761 0.758
37) -1.66 + 0.4 -1.26
38) -596.5 / -0.5 1193
39) 9 - -1786 1795
40) 0.83 - -7.703 8.533
41) -3 * -5 15
42) 0.09 - 0.06 0.03
43) -646 - 85 -731
44) 7.5 * -36 -270
45) 1154 + 6 1160
46) 1 - 52 -51
47) -4 + -712 -716
48) 9 - 8 1
49) 2 + -4.5 -2.5
50) 388 * 0.001 0.388
51) 56.26 + 1 57.26
52) 1 - 0.04 0.96
53) 0.007 / 0.004 1.75
54) 20 * -0.62 -12.4
55) 7182 - -1 7183
56) 3 - -3 6
57) 183.9 * 0.2 36.78
58) -980 + 71 -909
59) 3.7 / 0.02 185
60) -72 - -97 25
61) -9 * 92 -828
62) 56.6 - 6 50.6
63) -65 * -7 455
64) 6.9 + 0.005 6.905
65) 8.659 - 0.6 8.059
66) 2 * -70 -140
67) -3.7 / -5 0.74
68) 6.093 + -0.602 5.491
69) 45 / 6 7.5
70) 672 - 37 635
71) 41 - 649 -608
72) 6730 + 409 7139
73) 4.61 - 0.031 4.579
74) -11 - 9.5 -20.5
75) -0.2 + 20 19.8
76) 28.3 / -5 -5.66
77) 2 + 41.7 43.7
78) 1.027 - -0.1 1.127
79) 463 + 65 528
80) -10 + -0.2 -10.2


Quick links:

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