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.02 + -0.002 7.018
2) -53 * 2 -106
3) 211 + 8 219
4) -0.12 * 16 -1.92
5) 3 - -65.9 68.9
6) 7.44 - 0.007 7.433
7) 9 * 33.4 300.6
8) -5.7 - -968 962.3
9) 0.093 + 0.019 0.112
10) 0.003 - -6.7 6.703
11) 7 - 4.1 2.9
12) 0.6 * 0.12 0.072
13) 1445 * 0.3 433.5
14) -786 - -5182 4396
15) -65 * 6 -390
16) 39 + 0.88 39.88
17) 9700 - 580 9120
18) 780 - 53 727
19) 6631 + 88 6719
20) -0.06 / 0.005 -12
21) 5 * 8.02 40.1
22) 3 * -2 -6
23) 51.82 - 0.77 51.05
24) 3.77 - -26.6 30.37
25) 0.009 * 1610 14.49
26) 91.1 + -0.1 91
27) -81 * -7 567
28) -4 + 703 699
29) 1 * 5.823 5.823
30) -8.6 - 7 -15.6
31) 0.42 + 72.18 72.6
32) 24 * 52 1248
33) -6.6 * -0.06 0.396
34) -99.8 + 87.9 -11.9
35) 0.64 + 34.75 35.39
36) -3 * 1.5 -4.5
37) 0.9 + -0.03 0.87
38) 98.7 - 0.08 98.62
39) 0.097 * 1 0.097
40) -0.4 + 3.42 3.02
41) 4 * 0.01 0.04
42) 0.99 * 8.9 8.811
43) 151 - 388 -237
44) -231 - -80 -151
45) -5 * 3.84 -19.2
46) 1.6 * 0.9 1.44
47) 0.4 - -46 46.4
48) -742 - -890 148
49) -0.061 * -45 2.745
50) 33 + 84.4 117.4
51) 0.005 * 5 0.025
52) 14.92 + 6 20.92
53) 4 * 0.09 0.36
54) 0.6 - 0.04 0.56
55) -55 / -5 11
56) 9 + 9159 9168
57) 923.1 + 8 931.1
58) 8.92 / 0.8 11.15
59) -69 * 0.4 -27.6
60) 990 + -91 899
61) 755 - 61 694
62) 98 * 1.7 166.6
63) -1 * -0.61 0.61
64) 21.4 - 4.03 17.37
65) 686 - 96.1 589.9
66) 9 * -0.03 -0.27
67) 8 + -2.9 5.1
68) 671.1 - -0.7 671.8
69) -0.63 - 0.02 -0.65
70) 8 * 0.31 2.48
71) 95 + -80 15
72) -142 * 1 -142
73) 0.7 * 9.67 6.769
74) 0.08 + 0.646 0.726
75) -40 + 2 -38
76) 98.55 * 6 591.3
77) -9 - 5 -14
78) 0.9 - -71.7 72.6
79) 412 + 73 485
80) 24 - -99.9 123.9


Quick links:

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