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 * 0.06 0.42
2) 2.48 - 0.63 1.85
3) 673 + 7.6 680.6
4) 15 * 0.067 1.005
5) 10 / -8 -1.25
6) 9 * -7.1 -63.9
7) -804 - -6 -798
8) 6252 - 8 6244
9) -833 + -65 -898
10) -0.8 * 5 -4
11) 714 - 976 -262
12) -3 + 0.05 -2.95
13) -4 - -86.76 82.76
14) 160 - 4 156
15) 1 - 60.9 -59.9
16) -0.61 - 3 -3.61
17) 91 + 0.29 91.29
18) 0.519 * 7 3.633
19) -144 / -0.8 180
20) 4485 - -11 4496
21) -1.9 * 0.1 -0.19
22) 65.9 / 1 65.9
23) -5.16 + 7 1.84
24) 70.17 - 7.9 62.27
25) 3 * 328 984
26) 7 + 91.9 98.9
27) 29 - -2799 2828
28) -3 + 34 31
29) 43 / -0.5 -86
30) 0.985 * 5.4 5.319
31) 180.3 - -118 298.3
32) 1.5 + 900 901.5
33) 8 + 0.875 8.875
34) -203 + -5 -208
35) 6367 + -6 6361
36) -2089 / -5 417.8
37) -3 - 9 -12
38) 236 - 52 184
39) 12 + -3 9
40) -0.02 * 7 -0.14
41) -4 / 1 -4
42) 91.81 + 0.08 91.89
43) 0.07 - -0.088 0.158
44) 35.2 / 0.08 440
45) -243 + -6 -249
46) 6.09 - 12.3 -6.21
47) 10.38 + 2 12.38
48) 9.3 + -99 -89.7
49) 0.5 + -0.1 0.4
50) 431 + 28 459
51) -11 - -510 499
52) 0.6 + 0.84 1.44
53) 20 * 0.017 0.34
54) 4 + 0.1 4.1
55) 1 * 46 46
56) 0.1 - -0.006 0.106
57) -4 * -91 364
58) 2.3 + 6 8.3
59) 7907 - 2703 5204
60) 8.781 + -0.05 8.731
61) 3087 - 62 3025
62) 9 * 2 18
63) 5 * 0.004 0.02
64) 77.5 - -468.1 545.6
65) -9.6 / 6 -1.6
66) -7 - -5 -2
67) -0.6 - 2 -2.6
68) 26 * 76 1976
69) -895 - 5 -900
70) 0.209 - -0.8 1.009
71) 4 + 1540 1544
72) 56.38 + -49 7.38
73) -1.6 + -27.9 -29.5
74) 439 - -7522 7961
75) -929.2 / -92 10.1
76) -1 + 0.4 -0.6
77) 0.2 - 7 -6.8
78) 0.05 * 52 2.6
79) 0.006 / -0.008 -0.75
80) 7.6 - -0.06 7.66


Quick links:

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