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.73 * -9 6.57
2) 0.69 / 0.05 13.8
3) 96 + -66.69 29.31
4) 7.172 * 1 7.172
5) 6 + 16.8 22.8
6) -265 - -7 -258
7) 9 / 0.2 45
8) 90 * 20.4 1836
9) 30 + 82 112
10) 8 + 42 50
11) -0.001 / 0.02 -0.05
12) 19 + 4575 4594
13) 3 - 420 -417
14) 6.9 * 1.8 12.42
15) 29.8 + 3.19 32.99
16) -23.47 - 9.43 -32.9
17) 7 + -736 -729
18) -600 * -9 5400
19) -0.3 / 0.3 -1
20) 282.3 - 2 280.3
21) 20.03 + -5 15.03
22) 13 - 75 -62
23) -3.1 + 9 5.9
24) 12 + 0.01 12.01
25) 405.9 + 5 410.9
26) 9 * 0.007 0.063
27) 56.2 * -1 -56.2
28) 3 * 0.004 0.012
29) 0.003 + 0.001 0.004
30) 0.4 - 7 -6.6
31) -1 + -83 -84
32) 3 * 0.074 0.222
33) 92 - 4.37 87.63
34) 0.39 * 78 30.42
35) -37 - 298 -335
36) -7 * 2 -14
37) 0.416 * 24 9.984
38) -25 - 296 -321
39) 62 + -2 60
40) 95 - 1 94
41) -0.089 + 1 0.911
42) 6.2 - -0.8 7
43) -92 + -817 -909
44) 781 + 97 878
45) 854 + 92.5 946.5
46) 0.07 + 1.2 1.27
47) -0.05 / 0.002 -25
48) 566 + 955 1521
49) 0.006 - -0.53 0.536
50) 0.26 + 8.288 8.548
51) -0.09 * 8 -0.72
52) 6 + -75 -69
53) 6 - 0.041 5.959
54) 2.646 - -0.173 2.819
55) 181 * -0.02 -3.62
56) 22.6 + 48 70.6
57) -9 * 0.07 -0.63
58) 94.54 - -1.89 96.43
59) 78.9 - 62 16.9
60) -405 * 0.008 -3.24
61) -0.76 + 3.13 2.37
62) 3 * 6 18
63) 237 + 650.5 887.5
64) -23 - -4 -19
65) 0.16 * 59 9.44
66) 0.497 * 4 1.988
67) 8 * 2.94 23.52
68) 2296 + 61 2357
69) -661 - -12 -649
70) 84 / 4 21
71) -4.77 * -6 28.62
72) 61 - 29 32
73) -13.96 * 50 -698
74) 537 + 9.5 546.5
75) 2 - 0.6 1.4
76) 0.09 / 0.06 1.5
77) 9 - -0.43 9.43
78) 0.147 / 0.6 0.245
79) 2 * -0.27 -0.54
80) 0.01 + -4 -3.99


Quick links:

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