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.01 * 85.2 0.852
2) -7 / 0.7 -10
3) 4.52 + -1 3.52
4) -67 - -7 -60
5) 6.64 * 75 498
6) 34 + 855 889
7) 0.81 - 0.09 0.72
8) 4.8 + 0.008 4.808
9) 1.4 - 0.85 0.55
10) 9179 - 568 8611
11) 0.2 + 394 394.2
12) 8 * -57 -456
13) 1 + 8.94 9.94
14) 16 - 0.08 15.92
15) 909 / 9 101
16) 3 + 69.31 72.31
17) 9048 + 637 9685
18) 0.01 * 716 7.16
19) 51 + 8 59
20) -1.7 - -0.02 -1.68
21) 0.4 * 0.005 0.002
22) 2 - 0.264 1.736
23) -0.005 * -602 3.01
24) -83 - 830 -913
25) 33.74 - 4 29.74
26) 0.3 - 0.91 -0.61
27) 2.75 / 1 2.75
28) 80.1 + -16.5 63.6
29) -52 - 8 -60
30) -6 + 9.919 3.919
31) -90 * 3 -270
32) 0.3 + -0.08 0.22
33) 4 * 16.8 67.2
34) 6 / 0.001 6000
35) -66 * -26 1716
36) 9 - -8.35 17.35
37) 2 * 0.83 1.66
38) 93 - -0.16 93.16
39) 6 + 0.631 6.631
40) 41 + 72 113
41) 61 * 99 6039
42) 814 + 7 821
43) 0.4 - 9.74 -9.34
44) 689 + 2972 3661
45) 0.4 + -0.9 -0.5
46) 7.2 - -0.077 7.277
47) -29 + -398 -427
48) 0.04 * 34 1.36
49) 823 - 1480 -657
50) 37 * -1 -37
51) 98.64 - 50.5 48.14
52) 5 * -30 -150
53) -0.27 + 8.19 7.92
54) -7 + 3 -4
55) 374 * 0.003 1.122
56) 8 / 1 8
57) -0.8 - -7 6.2
58) -0.88 - 2.76 -3.64
59) 965 + 192 1157
60) 0.096 * 94.5 9.072
61) 0.9 * 9.9 8.91
62) 77 + -8 69
63) 0.004 * 6 0.024
64) 0.05 / -0.5 -0.1
65) 0.11 / 5 0.022
66) -16 - -13 -3
67) -104 * -2 208
68) 39 + 88.9 127.9
69) 5 * 7.9 39.5
70) 833.2 - -4 837.2
71) 0.076 + 2.581 2.657
72) 0.84 / -0.6 -1.4
73) 3 + 78 81
74) 3 * -3.6 -10.8
75) 16 - -21.58 37.58
76) 89.7 - 14 75.7
77) -6 + 4045 4039
78) 184 - 50 134
79) 8 + -0.006 7.994
80) -785 - 9 -794


Quick links:

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