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) -7.7 * 2 -15.4
2) 0.008 + 4.09 4.098
3) 92 - -5.85 97.85
4) 9 / 0.008 1125
5) 6 + 5 11
6) 8 - 82.7 -74.7
7) 799 + 486 1285
8) 28 - -230.9 258.9
9) -49 + 650 601
10) -85 + 38 -47
11) 61.5 * -6 -369
12) 2 + 7 9
13) 0.018 + 6 6.018
14) -18 + 7.2 -10.8
15) 0.008 - -0.02 0.028
16) 4608 + -165 4443
17) 6.6 + -0.8 5.8
18) 8 + 781 789
19) 22 * 4 88
20) 0.6 * 3.7 2.22
21) 0.7 + 97 97.7
22) 5 - 91 -86
23) 7 - 932 -925
24) 642 - 6 636
25) 0.004 / 4 0.001
26) -936 + 2031 1095
27) 37.8 + 6 43.8
28) 295 + 958 1253
29) 0.04 + 49 49.04
30) 0.5 * 708 354
31) 983 + -0.2 982.8
32) 6.196 + 5.764 11.96
33) 177.1 - 3.6 173.5
34) -6 + 38 32
35) -6 * 44 -264
36) 0.925 * 4 3.7
37) 9628 - 3547 6081
38) -6 / 4 -1.5
39) 85 + 0.35 85.35
40) -322 + -643 -965
41) 562 + 3 565
42) 6.333 - 0.042 6.291
43) 98 + 7 105
44) 6 - -920.4 926.4
45) -0.007 * -750 5.25
46) 5 - 941 -936
47) 93.5 + 7 100.5
48) 7 + 218 225
49) -2 * 39 -78
50) 390 + -0.3 389.7
51) 3.582 / 0.04 89.55
52) -927 + 23 -904
53) 0.7 + 17 17.7
54) 1 + 0.009 1.009
55) 234 + 27 261
56) 228 * 0.06 13.68
57) 517 + 1431 1948
58) 0.02 - -8.841 8.861
59) 0.9 + 0.01 0.91
60) 0.51 * 0.2 0.102
61) 9 + 823 832
62) 0.005 - -0.7 0.705
63) -0.3 * 61 -18.3
64) -73 / 5 -14.6
65) -6 + 77.93 71.93
66) 36 * 0.054 1.944
67) 5 - 0.7 4.3
68) 88 * 4 352
69) -0.06 * -329 19.74
70) 46 + 59 105
71) -0.5 + 0.03 -0.47
72) -5.4 * -121 653.4
73) 615 + 23 638
74) 0.861 / -0.007 -123
75) 96 - 1.68 94.32
76) 7.9 + 8 15.9
77) 353 + -0.2 352.8
78) 629 - -69 698
79) -0.23 - -25.79 25.56
80) 0.3 + 45 45.3


Quick links:

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