Before I retired, I would give my students the following challenge:
Write expressions for all the numbers from 1 to 100 using only the digits in the current year in order and using the operations +, -, x, ÷ (or / for divided by), ^ (raised to a power), sqrt (square root), ! (factorial), and int (or [ ] for greatest integer function), along with grouping symbols.

So, the first problem of the new year is to use only the digits 2, 0, 1, 8, (and in that order) along with the operations listed above to write expressions for all the numbers from 0 to 21.

Extra credit for those who can go past 21 (consecutively).

Click here for a worksheet

Click here for solutions to previous years

Some Solutions to the Problem:

0: 2 * 0 * 1 * 8
1: 2 * 0 + 1 ^ 8       or       2^0 * (1^8)       or       -2 + 0 + sqrt (1 + 8)
2: 20 - 18       or       2 + 0 * 1 * 8       or       2^0 + 1^8
3: 2 + 0 + 1 ^ 8       or       (2 + 0!) * 1^8
4: sqrt (-2 + 0 +18)       or       2 + 0! + 1 ^ 8       or       2 + 0 + 1 * int(sqrt(8))
5: -2 - 0! + 1 * 8       or       -2 + 0 - 1 + 8       or       2 + 0 + 1 + int(sqrt(8))
6: -2 * 0! + 1 * 8       or       -2 + 0 * 1 + 8       or       2 + 0! + 1 + int(sqrt(8))
7: -2 * 0! + 1 + 8       or       2 * 0 - 1 + 8       or       -2 + 0 + 1 + 8       or       2 + 0! + int(sqrt(18))
8: 2 * 0 * 1 + 8       or       -2 + 0! + 1 + 8
9: ((2^0) * 1) + 8       or       2 * 0 + 1 + 8
10: (2 * 0!) + (1 * 8)       or       2 + 0 * 1 + 8       or       2 + 0 + 1 * 8
11: 2 + 0 + 1 + 8       or       20 - (1 + 8)
12: 20 - (1 * 8)       or       2 + 0! + 1 + 8
13: 20 + 1 - 8       or       (2 + 0!)! - 1 + 8
14: (-2 + 0)*(1 - 8)       or       (2 + 0)*(-1 + 8)       or       (2 + 0!)! + 1 * 8
15: (2 + 0!)! + 1 + 8       or       -2 - 0! + 18       or       int(sqrt(201) + int(sqrt(sqrt(8)))
16: 2 * (0 + 1) * 8       or       20 - int (sqrt(18))       or       (2 + 0) * 1 * 8       or       (2^0 + 1) * 8
17: -(2^0) + 18       or       int(sqrt(2)) + (0! + 1) * 8
18: (2 ^ 0) * 18       or       2 + (0! + 1) * 8       or       2 * 0 + 18       or       2 * (0 + 1 + 8)
19: (2 ^ 0) + 18       or       20 - 1^8
20: 2 + 0 + 18       or       2 * (0! + 1 + 8)       or       20 / (1 ^ 8)
21: 20 + (1 ^ 8)       or       -2 - 0! + int(sqrt(sqrt((1 + 8)!)))       or       2 + 0! + 18
22: -2 + 0 + int(sqrt(sqrt((1 + 8)!)))       or       int(sqrt(201)) + 8       or       int(sqrt(20)) + 18
23: 20 + sqrt (1 + 8)       or       -2 + 0! + int(sqrt(sqrt((1 + 8)!)))       or       20 + 1 + int(sqrt(8))
24: (2 + 0 + 1) * 8
25: int (201 / 8)       or       2 - 0! + int(sqrt(sqrt((1 + 8)!)))
26: 2 + 0 + int(sqrt(sqrt((1 + 8)!)))
27: 20 - 1 + 8       or       2 + 0! + int(sqrt(sqrt((1 + 8)!)))
28: 2 * (0 + 1) * int(sqrt(sqrt(8!)))       or       20 * 1 + 8
29: 20 + 1 + 8
38: 2 * (0! + 18)
44: int(sqrt(2018))
49: int( int(sqrt(sqrt(sqrt(20!)))) / (int(sqrt(18))) )
57: (20 - 1) * (int(sqrt(sqrt(sqrt(8!)))))
58: int((int(sqrt(sqrt(sqrt(sqrt(sqrt(20!))))))!) * (sqrt(sqrt(sqrt(sqrt(18!))))))       or
      int(20 * (1 + sqrt(sqrt(sqrt(sqrt(((8)!)))))))
64: int(sqrt(sqrt(sqrt(sqrt(((20 + 1)!))))) * sqrt(sqrt(sqrt((8)!))))
66: int((sqrt(sqrt(sqrt(20!)))) / (sqrt(1 + 8)))       or       int(sqrt(sqrt(sqrt(20!)))) / (sqrt(1 + 8))
74: -20 + (int(sqrt(sqrt(sqrt(18!)))))
76: (20 - 1) * (int(sqrt(sqrt(sqrt(sqrt( int(sqrt(sqrt(8!)))!))))))
81: int(sqrt(sqrt(sqrt(((20 - 1)!)))) / sqrt(sqrt(8)))


Correctly solved by:

1. James Alarie ** Flint, Michigan
2. Brijesh Dave Mumbai City, Maharashtra, India
3. Ivy Joseph ** Pune, Maharashtra, India
4. Maura Flake ** Mountain View High School,
Mountain View, Wyoming
      ** Extra Credit