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) 26 - -5 31
2) 7 + -70.2 -63.2
3) 70 - -3212 3282
4) 0.56 + 0.06 0.62
5) 21 - 0.41 20.59
6) 7 * -3 -21
7) 150 + 65 215
8) 9 + -26 -17
9) 157 * -2 -314
10) 6546 - -663 7209
11) -5913 / 9 -657
12) 58.3 * 0.06 3.498
13) 3362 / 100 33.62
14) -3 + 7 4
15) -6 + -3 -9
16) 1.9 / 0.001 1900
17) 74 - 0.3 73.7
18) -0.009 + 6.8 6.791
19) 47 - 1 46
20) -1 + -237 -238
21) -15 + 46 31
22) 57 * -0.2 -11.4
23) -1 * -2 2
24) 0.07 - 0.38 -0.31
25) 930 + -0.6 929.4
26) 0.01 - 0.002 0.008
27) 1 * 3.983 3.983
28) 472.4 + 1 473.4
29) 1 + -6 -5
30) -5 + 0.08 -4.92
31) -72.7 * -4 290.8
32) 3.27 / 0.075 43.6
33) 806 + 5 811
34) -1.2 + 16.6 15.4
35) -34 * 4 -136
36) 4.9 - 2.8 2.1
37) 2 + -510 -508
38) -1 * -28.1 28.1
39) 461.3 / 0.1 4613
40) 2 * -2 -4
41) 71 - -4140 4211
42) 14 * -0.4 -5.6
43) 54.55 + -0.5 54.05
44) 1 + 11 12
45) 7 / -0.04 -175
46) 0.006 + 7.2 7.206
47) 0.09 - -36.52 36.61
48) 57 / 0.076 750
49) -14 - -6304 6290
50) -43 - 6 -49
51) 7 * 600 4200
52) 0.6 / 2 0.3
53) 985 - -303 1288
54) 7.25 * 0.7 5.075
55) 0.019 + -0.007 0.012
56) 352 - 6 346
57) -37 + 9 -28
58) -68 - -8629 8561
59) -40 + -271 -311
60) 9.9 - 2 7.9
61) 1 - 0.9 0.1
62) 2 + 0.03 2.03
63) 0.1 * 82 8.2
64) 7387 - 3 7384
65) 0.5 - 0.099 0.401
66) 378 / 6 63
67) 7 + 3 10
68) 1987 - 60 1927
69) 23 + 9.3 32.3
70) 5 - 3 2
71) -1 * -193 193
72) 2 + 8 10
73) 10 * 26 260
74) -218 * 0.2 -43.6
75) 8 + 3 11
76) 0.8 * 5.6 4.48
77) 5 - -86 91
78) 11 + -7.5 3.5
79) -269 - 88 -357
80) 1 * 7828 7828


Quick links:

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