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) 44.7 * 4 178.8
2) -2 * 63 -126
3) 0.671 - 0.08 0.591
4) 44.7 + -509.7 -465
5) -776 + 2 -774
6) -7 - 3 -10
7) 0.8 + 43 43.8
8) 5.8 + -2 3.8
9) 0.1 * -506 -50.6
10) 1.537 + 8.023 9.56
11) 212 - -0.8 212.8
12) 3.4 * 3 10.2
13) -3 + 0.05 -2.95
14) -9 + -5.5 -14.5
15) 4 - -35 39
16) 3.4 - 0.073 3.327
17) 2 + 0.951 2.951
18) 978 - -304 1282
19) -0.08 + 76 75.92
20) 44.2 - -67.9 112.1
21) 0.05 + -0.008 0.042
22) 92.73 - -2 94.73
23) 9127 + -4 9123
24) 15 / 0.2 75
25) -0.9 + -0.15 -1.05
26) 0.086 + 3.42 3.506
27) 2 * 0.001 0.002
28) 9 + 61 70
29) -0.02 - 0.67 -0.69
30) 8 - 74 -66
31) 16 * 349 5584
32) -5 - -9 4
33) 0.99 / -0.2 -4.95
34) 8.6 - -1 9.6
35) 1477 + 8440 9917
36) -85 + 6 -79
37) 99 * 3 297
38) 60.4 + 454 514.4
39) 0.515 - -0.005 0.52
40) 0.69 - -0.05 0.74
41) 1591 * 6 9546
42) 0.009 * 52 0.468
43) 0.5 - 4.47 -3.97
44) 307.7 + 39.5 347.2
45) -0.7 - -88 87.3
46) 0.48 - 6 -5.52
47) -0.01 * -8878 88.78
48) 6627 - -49 6676
49) -2 + -7 -9
50) 6 * 966 5796
51) 0.6 - 2.01 -1.41
52) 95 + 11.3 106.3
53) -0.54 / 9 -0.06
54) 88.2 / 0.035 2520
55) 0.7 - 0.004 0.696
56) 8 / -4 -2
57) -0.5 - 2 -2.5
58) 71 + -0.7 70.3
59) -5 - 503 -508
60) -83 + 6.8 -76.2
61) 3 / 5 0.6
62) -97 + 8 -89
63) 0.009 - -3 3.009
64) 703 - 872 -169
65) 71.82 + 0.1 71.92
66) -0.1 - 3.69 -3.79
67) -0.845 + 5 4.155
68) -4 - 0.9 -4.9
69) 0.05 * 122 6.1
70) 2864 + 47 2911
71) 9 - -7 16
72) 23.8 + 217.2 241
73) -4.2 * -0.5 2.1
74) 756 / 3 252
75) -0.007 * -42 0.294
76) 5 + 0.03 5.03
77) 1 - 0.004 0.996
78) -6.6 + -9 -15.6
79) -0.8 + 2 1.2
80) 8 + 40.2 48.2


Quick links:

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