[1] https://adventofcode.com/2017/events (3 editions has been released so far)
Depending on the interface, this tends to exercise language and runtime features like: string handling and parsing, event handling, conditionals / pattern matching, etc. "Calculator" is also a big enough problem space that you can come back to it to try out more interesting language features (e.g. using Rust enums to model your calculator's operations).
This was a critical mistake for me when learning Rust and led to many, many stumbling blocks
But surely it's going to depend somewhat on the language and what things are easy/hard to do in that language?
1. Kotlin Koans (https://play.kotlinlang.org/koans/overview) 2. Ruby koans (http://rubykoans.com/)
Rosetta code also has a great selection of problems / solutions in various languages: http://rosettacode.org/wiki/Category:Programming_Tasks