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) -3 - -6030 6027
2) 4 + 636.3 640.3
3) -33 - 8.2 -41.2
4) -109 * -0.016 1.744
5) 0.8 + 4 4.8
6) 0.002 - -0.649 0.651
7) 4004 - 8 3996
8) -50 + 71.7 21.7
9) -7 + 0.27 -6.73
10) -305 / 1 -305
11) -77 + 78 1
12) 14 - 9 5
13) -102 * 0.03 -3.06
14) 71.1 + 0.03 71.13
15) -5 + 472 467
16) 0.02 * 0.9 0.018
17) 6 - 735 -729
18) 1.4 / 0.2 7
19) -1 + -757 -758
20) -99 + 4028 3929
21) -0.24 - 7.3 -7.54
22) 21 - 9.4 11.6
23) 0.1 * 5 0.5
24) -5.582 + 7.609 2.027
25) 3 - 179 -176
26) -9 + 6.85 -2.15
27) 5 - 77 -72
28) 690 * 0.01 6.9
29) 1 + -0.769 0.231
30) 8 * 1.3 10.4
31) -3 + 86 83
32) -195 + -3 -198
33) 4 - -3 7
34) 0.07 * -53 -3.71
35) 0.6 + 2.507 3.107
36) -0.44 / 2 -0.22
37) -1.2 - 41 -42.2
38) -27 - 36 -63
39) 0.7 + 98 98.7
40) -0.005 * -2 0.01
41) 95.97 - -3.81 99.78
42) 33 + -0.24 32.76
43) 59 / -1 -59
44) 4 * 7 28
45) 70 / 2 35
46) 1 - -8.81 9.81
47) 0.1 * -98 -9.8
48) 26 - 4.67 21.33
49) 5 * -9 -45
50) 5 * 0.05 0.25
51) 6729 - -883 7612
52) 8 - 83 -75
53) 43.34 + 27.9 71.24
54) 0.7 - -3.7 4.4
55) 0.05 * 0.12 0.006
56) 56 - 0.09 55.91
57) 0.16 * 4.6 0.736
58) 0.007 - -0.9 0.907
59) 7 * -64 -448
60) 0.6 - 96 -95.4
61) 946 - 9 937
62) 50 / 0.04 1250
63) -567 - 9 -576
64) 9 / -1 -9
65) -35 + 602 567
66) 0.2 * 4608 921.6
67) 530.6 - 72 458.6
68) -0.004 - -7.61 7.606
69) 0.55 * 4.36 2.398
70) 64.2 + 925 989.2
71) -5 - 9 -14
72) 9.86 + 0.07 9.93
73) -5 + 928.1 923.1
74) 5 / -0.5 -10
75) 6 + 0.2 6.2
76) 0.22 - -66.3 66.52
77) -262 - -232 -30
78) 0.6 / 0.032 18.75
79) 5 + -798 -793
80) 0.833 + 4.1 4.933


Quick links:

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