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) -1 * -6.759 6.759
2) 3.306 - 0.6 2.706
3) 0.044 + 0.944 0.988
4) -0.01 - 8 -8.01
5) -49 * 20 -980
6) 0.82 + 6.34 7.16
7) 67 * 0.085 5.695
8) 5.66 / -1 -5.66
9) 3247 * 0.003 9.741
10) 0.767 + -0.009 0.758
11) 24 - 2.1 21.9
12) -99 - -902 803
13) 6 + 50 56
14) 369 - 80 289
15) 5 - 92.9 -87.9
16) 0.1 * 8.75 0.875
17) -633 + 6247 5614
18) 677.9 - 53 624.9
19) -603 + 4 -599
20) -78 + -351 -429
21) 5 * -1 -5
22) 94 + 9017 9111
23) 41 + 9 50
24) 3421 - -654 4075
25) 1 + -35 -34
26) 97 * -7 -679
27) 3.33 + -0.001 3.329
28) 2 - 0.006 1.994
29) 9.71 + 0.3 10.01
30) -89 - -4 -85
31) 0.087 / 8.7 0.01
32) 0.71 + 56 56.71
33) 3 * 721 2163
34) 531 - 39.5 491.5
35) 0.01 + 99 99.01
36) -6 * 0.3 -1.8
37) 53 + 2 55
38) 93 - 3.1 89.9
39) 6 - 0.001 5.999
40) 5 - 12 -7
41) -0.3 * 92 -27.6
42) -0.683 + 6.679 5.996
43) 6 - 81.3 -75.3
44) 30 + 4185 4215
45) -6 - 0.6 -6.6
46) 58 + 4 62
47) 4304 - 62 4242
48) 2 + -58 -56
49) 6 + -86 -80
50) 15.5 - -341.9 357.4
51) 359 - -65 424
52) 2.4 * 124 297.6
53) 9 - 7 2
54) 6.8 - -0.586 7.386
55) 77 - 0.9 76.1
56) 6 * 0.07 0.42
57) 6.85 + 6.12 12.97
58) 0.1 - -87.5 87.6
59) 7.82 - -3 10.82
60) 6 + -59.3 -53.3
61) 5 * -0.1 -0.5
62) -14 + 8.06 -5.94
63) 14.8 + 639 653.8
64) 0.001 / 0.008 0.125
65) -0.6 * 4 -2.4
66) 6553 + -530 6023
67) 375 + 41.2 416.2
68) -0.12 * 3 -0.36
69) 8 + 0.65 8.65
70) -6.1 - 0.3 -6.4
71) 5788 / 8 723.5
72) 99 - -3192 3291
73) -0.3 - 0.27 -0.57
74) -1 - 324 -325
75) -59 + -5 -64
76) 2 - -9.1 11.1
77) 18 / 0.8 22.5
78) 1 + 4.07 5.07
79) 45 - 39 6
80) 5 - -163 168


Quick links:

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