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.005 * 1806 9.03
2) 113.5 - 3 110.5
3) -4 * 0.09 -0.36
4) 5.3 - 23 -17.7
5) 1 - -111 112
6) 9 + -53 -44
7) 6 - 3 3
8) 0.11 - -0.55 0.66
9) -0.01 / 0.001 -10
10) -0.4 + -9 -9.4
11) -79 - 560 -639
12) 417 + 2 419
13) 889.8 + -439 450.8
14) 0.8 + 0.002 0.802
15) 81 + -0.62 80.38
16) 9329 - 5110 4219
17) 46 - 1.8 44.2
18) 0.003 + 6.238 6.241
19) 6 - 0.06 5.94
20) 4 * 0.413 1.652
21) 82 + 87 169
22) 5.2 + 90.54 95.74
23) 6756 - -36 6792
24) 942 + -0.4 941.6
25) -0.9 / 0.001 -900
26) 10 + 715 725
27) 7 - -148 155
28) -15.6 * -37 577.2
29) -0.3 * 52 -15.6
30) 4.7 * -9 -42.3
31) 8.1 + 3 11.1
32) 0.16 - 1.1 -0.94
33) -454 - -39 -415
34) -9 + 17 8
35) -0.208 * 40 -8.32
36) 877.5 - 2 875.5
37) 0.01 + 8.6 8.61
38) -150.6 * 5 -753
39) 58.6 + 38.84 97.44
40) 8 - -0.281 8.281
41) 4.8 + 86 90.8
42) 0.77 - -98.5 99.27
43) 0.1 - -27 27.1
44) 3.5 * -2.3 -8.05
45) 34 * 9.3 316.2
46) 0.8 * 80.8 64.64
47) 324 / -6 -54
48) -5 + -1.5 -6.5
49) 57.26 - 0.75 56.51
50) 6 - -1.59 7.59
51) 1616 * 4 6464
52) 244 + -5 239
53) -6 - 4 -10
54) 7 + -21 -14
55) 63 - 799 -736
56) 8.48 + 0.013 8.493
57) 1 * 152 152
58) 7 - 22 -15
59) 0.4 + 0.96 1.36
60) 39 * -0.08 -3.12
61) 5 * -183 -915
62) 8.9 - 0.952 7.948
63) -3.4 * 7 -23.8
64) 9.14 + 0.01 9.15
65) -3 * -0.42 1.26
66) 4 * -7 -28
67) 2 * 0.084 0.168
68) 0.8 - 44 -43.2
69) -45.96 + 57 11.04
70) 302 + 18.3 320.3
71) -9.4 + 5.8 -3.6
72) 554 + 5686 6240
73) 43.5 - -9 52.5
74) 0.16 / -0.004 -40
75) -7 * 8 -56
76) 579 + -781 -202
77) 26 - -3.56 29.56
78) 56 - -8 64
79) 8.4 + 8 16.4
80) 3 - -6 9


Quick links:

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