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.05 + 3 3.05
2) -0.8 + 92.63 91.83
3) -37.4 - -2 -35.4
4) 644.3 - 5 639.3
5) -0.6 / 0.08 -7.5
6) -75.9 + 24.2 -51.7
7) -36 + -379 -415
8) -0.4 - 5.5 -5.9
9) -7 + 3534 3527
10) -67 + 79.7 12.7
11) 2.78 - -0.088 2.868
12) 25 - 0.1 24.9
13) 4859 + -3149 1710
14) -84 - 57 -141
15) 6 * 69 414
16) 0.7 + -1.88 -1.18
17) -1157 * -0.2 231.4
18) 486 + -5 481
19) -7 - 95 -102
20) 55 + 0.3 55.3
21) 874 - -6027 6901
22) 0.5 / 0.008 62.5
23) 1 + -6.6 -5.6
24) 0.1 * 65 6.5
25) 71 + -18 53
26) -3 * 88 -264
27) -7 * -97 679
28) 80.1 / 3 26.7
29) 3 * -284 -852
30) 119 - -7.6 126.6
31) 0.069 - -0.008 0.077
32) 0.024 + 0.144 0.168
33) 93.1 - -0.04 93.14
34) 2.428 - 0.9 1.528
35) 0.175 + -0.09 0.085
36) 84 * 50 4200
37) 253 * 0.09 22.77
38) -0.023 + 0.59 0.567
39) 0.68 + -9 -8.32
40) 2 * 0.318 0.636
41) 0.23 - 0.022 0.208
42) 3 - 0.15 2.85
43) 2 / 0.005 400
44) -45 + 370 325
45) 1.07 - 4 -2.93
46) 849 * 3 2547
47) -54.9 - 5 -59.9
48) 0.16 + 15.5 15.66
49) 4564 + -961 3603
50) 0.5 + 0.003 0.503
51) -0.03 + 0.056 0.026
52) 2 + 2.6 4.6
53) 0.056 - -0.09 0.146
54) 73 * 5 365
55) 2 + -56 -54
56) -1.9 - -6 4.1
57) 720 + -9 711
58) 9 * 622 5598
59) 1 + -625 -624
60) -4 * 82.5 -330
61) 6 + -261 -255
62) 0.9 - 4 -3.1
63) 58 + -820 -762
64) 168 - 111 57
65) -0.765 / -0.002 382.5
66) 93.1 + -35 58.1
67) 8.5 * 0.5 4.25
68) 482 * 0.004 1.928
69) 324 + 36 360
70) 365 + -6 359
71) 93 * 90 8370
72) 8652 - -3 8655
73) 2 / 4 0.5
74) 0.3 * 93 27.9
75) 2884 - 475 2409
76) 5705 * 0.02 114.1
77) 8 / 0.002 4000
78) -3 - 56 -59
79) 546 * 0.04 21.84
80) 552 + 8.8 560.8


Quick links:

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