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.8 - 0.17 0.63
2) 4 - 57 -53
3) 9 / 3 3
4) -233 + 6 -227
5) 0.7 + 6 6.7
6) 0.008 - -0.1 0.108
7) 5 - 88 -83
8) -8 - 980 -988
9) 5.86 - 0.94 4.92
10) 0.842 * 1 0.842
11) -73 + -5 -78
12) 0.48 * 0.6 0.288
13) -11 - 88.7 -99.7
14) 8 - -0.92 8.92
15) -0.96 + 8.07 7.11
16) 17.09 / 0.5 34.18
17) 8 + 37.01 45.01
18) 489 + -38 451
19) -0.332 + 0.93 0.598
20) 44.5 * 48 2136
21) 0.009 + 7.88 7.889
22) -640 * 0.05 -32
23) 5 * 0.251 1.255
24) -0.07 / -0.7 0.1
25) -769 + 6 -763
26) 0.43 * -2 -0.86
27) -0.008 * -114 0.912
28) 206 + 2.3 208.3
29) 0.87 * -3 -2.61
30) 0.8 + 0.007 0.807
31) 11 + 0.07 11.07
32) 22 - 213 -191
33) 59 - 0.9 58.1
34) 28.9 * 25 722.5
35) 0.7 + 81.08 81.78
36) 78 / -50 -1.56
37) 985 + 4 989
38) 238 + 279 517
39) 345 + 4631 4976
40) -0.08 - 8 -8.08
41) 85 + -0.07 84.93
42) 86 - -3.62 89.62
43) 4.4 + 0.01 4.41
44) -6.2 - -5 -1.2
45) 92 + -63.8 28.2
46) -982 + -2 -984
47) 0.025 - -7 7.025
48) 342 - 525 -183
49) 4 + 3927 3931
50) 7 + 6 13
51) 96 - 69.9 26.1
52) 23 * 85 1955
53) 0.05 * -81.6 -4.08
54) 48 - 1 47
55) 2 * -2 -4
56) -8 + 23 15
57) 0.08 - -0.2 0.28
58) 4 - 347 -343
59) -2 + 4634 4632
60) -0.03 - 4 -4.03
61) -5.3 * 3 -15.9
62) 0.715 * 7 5.005
63) 0.881 + -0.09 0.791
64) 0.94 * 3 2.82
65) -5.78 + 0.2 -5.58
66) 1845 - 116 1729
67) 860 * 0.09 77.4
68) 0.4 + 8 8.4
69) 0.05 * -66 -3.3
70) -1 + -0.38 -1.38
71) 7 * -6 -42
72) 26 + 47 73
73) -1 + 951 950
74) -35 + 98.4 63.4
75) 4530 + -31 4499
76) -39 / 3 -13
77) 0.66 + -0.342 0.318
78) -0.288 - -0.91 0.622
79) 2 / -4 -0.5
80) 6 - -996 1002


Quick links:

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