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) 0.4 * 403 161.2
2) -69 - 89 -158
3) 20 * 4 80
4) 70.1 + 95 165.1
5) 98.1 - -44 142.1
6) 68 * 1.6 108.8
7) 3.8 + 2.1 5.9
8) 2 - 0.01 1.99
9) -396 - 4 -400
10) 7 - 0.029 6.971
11) -5.6 - 93.1 -98.7
12) -80 - 7 -87
13) -81 / 75 -1.08
14) 3 + 336 339
15) 1 * 453 453
16) 37 - -8 45
17) 0.1 + 5 5.1
18) 9 + 65 74
19) 2.9 - -7 9.9
20) -4 + -1 -5
21) -6 - 3 -9
22) 90 + 315 405
23) 0.1 + 5 5.1
24) 478.4 - 82 396.4
25) 49 - -61 110
26) -34 * 3 -102
27) -68 * -3 204
28) 9 + 25 34
29) 3 * 1.8 5.4
30) 0.03 - 2 -1.97
31) -39 + 107 68
32) 0.4 / 0.001 400
33) 0.6 - 44 -43.4
34) 92 - 80.25 11.75
35) -0.03 * 2 -0.06
36) 9 + 4.5 13.5
37) 8959 - 5154 3805
38) 7.2 - -2.4 9.6
39) 77.35 / 0.07 1105
40) -549 + 824 275
41) -36 * -2.4 86.4
42) -8 - -3779 3771
43) -0.5 + -20 -20.5
44) -7 * -0.543 3.801
45) 0.177 / 3 0.059
46) 90.02 - 0.9 89.12
47) 49 - 556 -507
48) 9216 + 82 9298
49) 6 * 77 462
50) -1.3 * 4.9 -6.37
51) 72.84 + 0.09 72.93
52) 3.2 - 42.7 -39.5
53) 0.2 / -2 -0.1
54) 468 + 1 469
55) 63 - 8 55
56) 1 * 102 102
57) -2 + 920.2 918.2
58) 459 * 0.09 41.31
59) -36 - 60 -96
60) 2.7 / 0.5 5.4
61) 0.671 + -0.01 0.661
62) -1.4 * -8 11.2
63) 0.009 * 2 0.018
64) 143 - 36 107
65) 35 + 81.7 116.7
66) 0.95 + 0.017 0.967
67) 34 - -8 42
68) -42 * -0.064 2.688
69) 90 - 900 -810
70) 29.9 * 60 1794
71) -477 + -53 -530
72) 4224 * 0.001 4.224
73) -31 + 1 -30
74) 78 - 85 -7
75) 0.041 - -7.6 7.641
76) 35 + 55.3 90.3
77) -5 * -9 45
78) 83 * 0.006 0.498
79) 0.06 / -3 -0.02
80) 183 - -1035 1218


Quick links:

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