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) 39 + 9.3 48.3
2) 37.78 - -0.94 38.72
3) 0.6 * 0.04 0.024
4) 3 - -5.164 8.164
5) 6.6 * 7 46.2
6) 361.5 - 13 348.5
7) 7088 - 4 7084
8) 17 + 0.78 17.78
9) 0.06 + -1 -0.94
10) 8.644 + 0.83 9.474
11) -0.416 - -4 3.584
12) -2 + 2.84 0.84
13) 0.4 * 8 3.2
14) 7 - 0.07 6.93
15) 0.4 + -0.005 0.395
16) -0.5 - -89.2 88.7
17) -78 + -282 -360
18) 368 - -25.7 393.7
19) 4 + 2569 2573
20) 9 - 0.84 8.16
21) -23.1 + 69.3 46.2
22) -0.03 * -0.1 0.003
23) 76 / 25 3.04
24) -9 - 0.05 -9.05
25) -479 - 438 -917
26) -2 + -7 -9
27) -0.27 / -0.09 3
28) 351 + 14.8 365.8
29) 2.15 - -75 77.15
30) 29 * 7 203
31) 6 + 8.27 14.27
32) 34.3 - 14 20.3
33) 4 + 76.29 80.29
34) -4.69 + 6 1.31
35) 840.4 + 4 844.4
36) 3095 - -28 3123
37) 4.82 * 9 43.38
38) 0.86 + 7 7.86
39) 1 * -0.9 -0.9
40) 3926 + 90 4016
41) 12.65 - 0.6 12.05
42) -4 + 6 2
43) -0.008 * -3810 30.48
44) 1.02 - 0.003 1.017
45) 0.7 + -0.2 0.5
46) 2 - 3 -1
47) 5 - 7 -2
48) 6.7 - -0.8 7.5
49) 49.9 + 0.08 49.98
50) 474 + 38 512
51) 3 * -3.05 -9.15
52) 0.06 + 8.82 8.88
53) 8.5 + 176.1 184.6
54) 0.66 + -0.09 0.57
55) -0.5 + 54.6 54.1
56) -44 + 1 -43
57) 4315 - 393 3922
58) -1 * 61 -61
59) 590.6 - 6 584.6
60) 4 * -4 -16
61) 3.3 - 18.5 -15.2
62) 5.6 * 6 33.6
63) 76.49 + -6 70.49
64) -5 + 5 0
65) -20 + 4 -16
66) 6099 + 3808 9907
67) 9.7 - 1.7 8
68) -52.94 + 56.79 3.85
69) 0.34 - 0.066 0.274
70) 7 + 1715 1722
71) 3.32 + 0.03 3.35
72) -30.7 - -62 31.3
73) 36 + 0.76 36.76
74) 5 - -2932 2937
75) -6 / 0.01 -600
76) -4 - 6 -10
77) 2.92 + 0.357 3.277
78) 4 + 834 838
79) 8.3 - 0.04 8.26
80) 3 * 7 21


Quick links:

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