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) -4 + 162 158
2) 399 + 583 982
3) 10 + 1310 1320
4) 1.7 * -7 -11.9
5) 1 + 9280 9281
6) 0.29 + -8 -7.71
7) 9750 - 4810 4940
8) 8 * 0.058 0.464
9) -8 / 0.4 -20
10) -0.26 + 2 1.74
11) 0.003 - -0.009 0.012
12) 489 + 81 570
13) 80 * 66.8 5344
14) 0.03 + -0.006 0.024
15) -0.41 + -0.01 -0.42
16) 3 - 0.48 2.52
17) 0.9 - -0.393 1.293
18) 9 * 130 1170
19) 0.77 + 0.2 0.97
20) -21 - -29.9 8.9
21) 0.3 * 61 18.3
22) 10.68 - 0.828 9.852
23) 0.001 * 7857 7.857
24) -3.91 + -0.02 -3.93
25) 0.07 - 0.9 -0.83
26) 25.6 + 823 848.6
27) -7 - 19 -26
28) 90 - 3.37 86.63
29) -699 + 9 -690
30) 8.44 * 0.1 0.844
31) 0.007 + 0.004 0.011
32) 416 * 6 2496
33) 9 - 9.2 -0.2
34) 47.6 - 26 21.6
35) -5 - 814 -819
36) 71 + 92 163
37) 0.016 * 38 0.608
38) 0.1 - 0.03 0.07
39) 786.9 - 5.8 781.1
40) 3.79 + -2 1.79
41) -962 + -22 -984
42) 5 * 4 20
43) 6083 + -32 6051
44) 36 - 74.8 -38.8
45) -0.06 - -0.09 0.03
46) 7744 + -7 7737
47) 0.8 - 1.45 -0.65
48) 7 - 0.6 6.4
49) 8.864 * 1 8.864
50) 22.9 + 0.9 23.8
51) 0.4 + 6 6.4
52) -0.005 - -6.8 6.795
53) -2 - 57 -59
54) -5.68 - -1 -4.68
55) 0.09 * 0.9 0.081
56) -64 + 558 494
57) 0.34 / 0.2 1.7
58) 672 - 27 645
59) -0.3 + 924.9 924.6
60) 0.7 * 51.1 35.77
61) 68.6 - 2.9 65.7
62) 47 * 21 987
63) 0.8 + 430 430.8
64) 168 - -0.2 168.2
65) -0.06 * -1 0.06
66) -0.82 * 150 -123
67) -4 + -1 -5
68) 562 * 7 3934
69) 8172 + -3831 4341
70) 2.6 - -429 431.6
71) 514 / 0.08 6425
72) -6 + 967 961
73) -7 * 1 -7
74) 0.5 + 0.483 0.983
75) -10 * 0.002 -0.02
76) 4 * -6 -24
77) 0.7 - -6.2 6.9
78) 27 + 23 50
79) -0.014 * 380 -5.32
80) 0.08 - -8 8.08


Quick links:

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