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 - -0.08 -2.92
2) -3 * 21 -63
3) -2 + 56 54
4) 8 + 689 697
5) 4144 + 60 4204
6) -3.8 * -9.65 36.67
7) 0.003 / 0.001 3
8) -0.58 - -74.6 74.02
9) 1.08 + 0.23 1.31
10) 20 + 8.6 28.6
11) 6.02 + 1 7.02
12) 1.576 + 3.79 5.366
13) -18 + 35.63 17.63
14) 4172 - 7 4165
15) -5.38 + 38 32.62
16) 9 - -2.44 11.44
17) -37 + -60 -97
18) 379 - 426 -47
19) -0.04 * 9 -0.36
20) 4 * -5.6 -22.4
21) 72.8 + -1 71.8
22) 94 + 455 549
23) 1 - 0.02 0.98
24) 442.9 + 0.2 443.1
25) -0.7 - 1.2 -1.9
26) 81 * 8 648
27) 4 - 23 -19
28) 0.177 + 0.05 0.227
29) -968 * -0.6 580.8
30) 43 + 8859 8902
31) 0.07 * 7.4 0.518
32) 414 + 59.5 473.5
33) 9569 - -217 9786
34) 921.4 - 95 826.4
35) -0.015 + 8 7.985
36) -6.5 - -6.548 0.048
37) -4.2 - -24.82 20.62
38) 0.29 + -0.08 0.21
39) -0.1 - -0.03 -0.07
40) 60.8 / -8 -7.6
41) 2963 + 4 2967
42) -2 * 0.7 -1.4
43) 3066 - 1 3065
44) 0.02 + 9.5 9.52
45) 0.6 * 8.5 5.1
46) -1.9 + -1 -2.9
47) 1 * 0.005 0.005
48) 782 - -156.4 938.4
49) 8 * 0.002 0.016
50) -6 + -4.1 -10.1
51) 911 - 0.8 910.2
52) -22 * 6.5 -143
53) 57.31 - 4 53.31
54) 12 + 17 29
55) -750 + 4819 4069
56) -0.09 * -6 0.54
57) 2 - 0.001 1.999
58) 0.597 + -0.017 0.58
59) 197.3 - 101 96.3
60) 6 + 872 878
61) 395 * 0.054 21.33
62) -0.06 + 0.75 0.69
63) 1 - 97.6 -96.6
64) 4 + 8.4 12.4
65) 34.08 / -4 -8.52
66) 1 + 0.006 1.006
67) -0.721 - -4 3.279
68) -0.1 + -44 -44.1
69) -6.8 - -7 0.2
70) 0.6 - 70 -69.4
71) 2.7 + -10 -7.3
72) 0.62 + 1.903 2.523
73) 0.2 - 8 -7.8
74) 0.1 - -6 6.1
75) 94 + 7.8 101.8
76) 95.2 + 1 96.2
77) 299 + 7302 7601
78) 0.6 + 17 17.6
79) 8029 - -5 8034
80) 8 + -731 -723


Quick links:

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