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.004 - -1 1.004
2) 764.4 / 0.1 7644
3) 58 + -8.92 49.08
4) 68 * 0.27 18.36
5) 0.17 * 0.3 0.051
6) 9.97 + 62 71.97
7) 8 - 5 3
8) -92.8 - 0.1 -92.9
9) -76 * -0.7 53.2
10) 2192 + 43 2235
11) -0.005 + 4.28 4.275
12) 778 * 5 3890
13) 280 + 18 298
14) -0.193 - -0.9 0.707
15) 437 + 60.9 497.9
16) -2 - 3 -5
17) 0.05 + 0.39 0.44
18) -8 + 5.7 -2.3
19) 703.1 + -352 351.1
20) 154 + -85 69
21) 618 * 0.08 49.44
22) 0.09 * 2 0.18
23) 9 + 0.66 9.66
24) -93 * -1 93
25) 0.42 + 9 9.42
26) 0.01 * 97.1 0.971
27) 27.4 - 4 23.4
28) 0.01 + -2.7 -2.69
29) 0.633 + -0.04 0.593
30) 11 + 5.16 16.16
31) 9 + 95 104
32) 40 - 3.5 36.5
33) 46.1 + 919.5 965.6
34) 128 + 16 144
35) -6 - -8554 8548
36) 810 / 3 270
37) 8.17 + 90 98.17
38) -0.2 + -7.3 -7.5
39) -4.6 - 66 -70.6
40) 3 + 751 754
41) 9.4 * 2.5 23.5
42) 41 - 61 -20
43) 367 + 3092 3459
44) -0.06 * -9080 544.8
45) -281 + -50 -331
46) -12 + -66 -78
47) 0.26 * -9 -2.34
48) 8 - 0.2 7.8
49) -6.37 + 74 67.63
50) 0.795 * 8 6.36
51) -0.133 + 0.6 0.467
52) 3.67 - 0.9 2.77
53) 75 + 8 83
54) -705 + 76 -629
55) 0.2 * 9 1.8
56) 3 - 4 -1
57) 5 + 0.003 5.003
58) 3 - 0.4 2.6
59) 0.77 + 55 55.77
60) 84 / 35 2.4
61) 0.34 - 0.32 0.02
62) 26 + 627 653
63) -0.5 - -949 948.5
64) 53 / 2 26.5
65) 3 - -0.2 3.2
66) 484 * 4 1936
67) -168 + 69 -99
68) 0.32 - -4.014 4.334
69) 7.436 + 2.305 9.741
70) 7.57 + -2 5.57
71) 1.333 * 20 26.66
72) 4932 - 262 4670
73) -518 + 88 -430
74) 5526 - 8 5518
75) 313.8 / 0.6 523
76) 3.459 - -0.002 3.461
77) 17 * 0.003 0.051
78) 0.97 + 0.003 0.973
79) 7 * 99.3 695.1
80) 3816 - 124 3692


Quick links:

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