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.45 - -7.27 14.72
2) 4 + 6921 6925
3) 5855 - 89 5766
4) -0.03 * 193 -5.79
5) 63 + 5 68
6) 0.9 * 0.02 0.018
7) 18 + 8.5 26.5
8) -8 - -39 31
9) 3.443 + 0.005 3.448
10) 7 * 6 42
11) 58 + 22.4 80.4
12) -7.11 + 4.9 -2.21
13) 7.67 / 0.001 7670
14) 1 + -630 -629
15) 1.9 * 3.86 7.334
16) 0.008 - -7.18 7.188
17) 7 + 1384 1391
18) -0.038 + 0.49 0.452
19) 553 - -4 557
20) 0.01 * 3 0.03
21) 0.59 + 5.59 6.18
22) -7 - -0.03 -6.97
23) -4 + 10 6
24) -0.5 + 0.36 -0.14
25) -0.19 - 0.97 -1.16
26) 79.4 + 8.7 88.1
27) -246 * -0.004 0.984
28) 8 + 84 92
29) -99 - -30 -69
30) -36 - 9 -45
31) 1 + 74.4 75.4
32) 27 * -26 -702
33) 14 - 57 -43
34) 5.7 * 26 148.2
35) 46 - 5 41
36) -50 + 1.9 -48.1
37) -3 - -49.7 46.7
38) 7.1 / -0.05 -142
39) 5 - 86 -81
40) 0.52 - -3 3.52
41) -0.08 - -0.4 0.32
42) 9 + 2 11
43) 0.9 + 0.18 1.08
44) 1 * -0.6 -0.6
45) 7.833 - 0.09 7.743
46) 1.875 + 0.138 2.013
47) -7 - 8 -15
48) 0.4 + 9 9.4
49) 253 - 0.9 252.1
50) 51 - 38.5 12.5
51) 0.61 + 8.383 8.993
52) 9.9 * 3.4 33.66
53) 23.6 * 0.4 9.44
54) -1 * 26.5 -26.5
55) -8 + -84 -92
56) 4 * 1 4
57) 0.008 * 5010 40.08
58) 4.21 - 0.577 3.633
59) -7.9 + 2 -5.9
60) -5.5 + -4.9 -10.4
61) 2 * 0.645 1.29
62) -70.4 + 0.2 -70.2
63) 9 + 0.9 9.9
64) 9141 / -277 -33
65) 3639 - 3256 383
66) 96 + 336 432
67) 4 + 26 30
68) 5.45 - -0.123 5.573
69) 56.83 * 0.1 5.683
70) 218 - 1 217
71) -79 * -62 4898
72) -499 - -422 -77
73) 3.11 * 1 3.11
74) 0.01 + 2 2.01
75) 938 * 0.02 18.76
76) 26 + -97 -71
77) 0.15 - 7 -6.85
78) 0.007 / -0.1 -0.07
79) 0.043 - 7.123 -7.08
80) 0.5 / 4 0.125


Quick links:

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