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) 9 * 37.4 336.6
2) 77.93 - 0.02 77.91
3) 0.8 + 7 7.8
4) 0.868 + -0.06 0.808
5) 80 - 0.31 79.69
6) 95 - 9 86
7) 702.1 + 96.3 798.4
8) 993.3 + 5 998.3
9) 22.3 - 1.3 21
10) -79 - -266 187
11) 58 / 0.008 7250
12) 0.97 * 840 814.8
13) 69 + 990 1059
14) 0.708 * 1 0.708
15) 822 + 99 921
16) -0.9 + 736 735.1
17) 616 / 0.7 880
18) 0.111 * 2 0.222
19) 63 / -9 -7
20) -0.4 + 8 7.6
21) -9.3 + 73 63.7
22) 0.04 / 0.4 0.1
23) -24 + 414 390
24) -0.53 / 0.1 -5.3
25) 55 + 761.4 816.4
26) -45 / 3 -15
27) 0.674 - -6 6.674
28) 76 - 0.85 75.15
29) 60 / 0.3 200
30) 0.156 + -0.08 0.076
31) 28.4 - 7.3 21.1
32) 8.6 + 0.5 9.1
33) 2.493 * 2 4.986
34) 8 - -8011 8019
35) 0.1 + -0.32 -0.22
36) 87 - 0.08 86.92
37) 5 * 116 580
38) 26 - 1 25
39) 4 + -5.1 -1.1
40) 2 + 464 466
41) -0.5 * 9 -4.5
42) 0.014 - -0.69 0.704
43) 0.048 * 2 0.096
44) 71 * 0.095 6.745
45) 6 + 0.072 6.072
46) 68.7 + -111 -42.3
47) 5 * 435 2175
48) 0.008 - -0.006 0.014
49) 15 + 4.96 19.96
50) 0.8 - 0.008 0.792
51) 6916 + 75 6991
52) -9 + -34 -43
53) 7.01 + 0.4 7.41
54) -5 * 0.06 -0.3
55) 6 - 1 5
56) 9 * 9.1 81.9
57) 3 / 0.4 7.5
58) -946 + 872 -74
59) -11.2 - 3 -14.2
60) -63 - 0.5 -63.5
61) 1 - -9983 9984
62) 2 * 9 18
63) 487.3 - 45.8 441.5
64) 8 - -629 637
65) -0.4 + -18.1 -18.5
66) 23 - 59 -36
67) 9 - 9.94 -0.94
68) 0.03 / 0.002 15
69) -38 - -6 -32
70) -5 - -268 263
71) 8 * 0.001 0.008
72) -2 + 4.9 2.9
73) -2.25 - 6 -8.25
74) 35 - -59 94
75) 1 + -0.983 0.017
76) 4 * 0.8 3.2
77) 727 - -4785 5512
78) 1.34 + 0.005 1.345
79) 0.6 / -5 -0.12
80) 7 - 32 -25


Quick links:

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