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) -9 + 29 20
2) 0.006 * 7 0.042
3) 0.02 + 0.4 0.42
4) 350 / 28 12.5
5) -42 * 0.4 -16.8
6) -0.012 + 6 5.988
7) 1 + 0.629 1.629
8) 662 - -8 670
9) -46.9 + -52 -98.9
10) -0.18 + 2 1.82
11) -48.9 + 0.6 -48.3
12) -0.7 - -0.1 -0.6
13) 572 * 0.008 4.576
14) -0.322 * -7.5 2.415
15) -0.716 + 3.904 3.188
16) 39 + 4662 4701
17) 5734 + 661 6395
18) -49 - 1.3 -50.3
19) 89.2 - -41 130.2
20) 29 + 3 32
21) 9 - 671 -662
22) 8.85 + 0.2 9.05
23) 303 + 6 309
24) -9 - 6 -15
25) -0.5 * 67 -33.5
26) -6 + -949 -955
27) 18 + -78.4 -60.4
28) -9.1 - -449 439.9
29) -9 + 1 -8
30) 8.769 - 0.02 8.749
31) 453 + 7.8 460.8
32) -0.4 * 35 -14
33) 0.705 - 0.22 0.485
34) -76 + 95 19
35) 20.4 * 3.25 66.3
36) 75 - -1.4 76.4
37) 5.3 / 50 0.106
38) 0.1 * 32 3.2
39) 0.02 + -2.9 -2.88
40) -72 - -0.4 -71.6
41) 0.221 - -0.003 0.224
42) 3564 + -1505 2059
43) 882 * 7 6174
44) -14 + -394 -408
45) -316 / -0.16 1975
46) 0.098 + -0.009 0.089
47) -2 / 1 -2
48) -8 + 345 337
49) 471 * 0.09 42.39
50) 0.172 + 4 4.172
51) 71 - 5 66
52) 20 - -6871 6891
53) 2 + 6.9 8.9
54) -0.69 - -0.72 0.03
55) 0.27 + -0.007 0.263
56) 0.006 * 4 0.024
57) 702 - -763 1465
58) 0.76 + 0.57 1.33
59) 0.008 - 0.002 0.006
60) 86 * 8 688
61) 47 + 8 55
62) -13 - 0.4 -13.4
63) 12 * 5 60
64) 90 - 3 87
65) 3 - 0.069 2.931
66) 64 + 5 69
67) 1 - 662 -661
68) -0.006 + 0.4 0.394
69) 0.298 * 4 1.192
70) -0.003 - -7 6.997
71) 3524 * 1.5 5286
72) 0.453 + 7.2 7.653
73) 4 - -27 31
74) 5 - 21 -16
75) 0.006 + 0.005 0.011
76) 65.6 - 5 60.6
77) -55 / -0.5 110
78) 2 + -6 -4
79) 5 * 0.4 2
80) -37 - -2417 2380


Quick links:

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