With all my love for Project Euler, I absolutely hate it when people mention it in relation to useful programming skills. PE is about math more than it's about programming. The programming constructs you need for it are very basic and won't teach you much about the language. They won't teach you how that language works for large modular applications. They won't teach you what useful libraries the language has for networking, GUIs, parsing and so on. They won't teach you how to package applications written in the language for distribution. They won't teach you how the language interoperates with other languages (especially C).
Phew, sorry for the flame. Had to get it off my chest. PE is sometimes a knee-jerk reaction to programming queries, and this is wrong IMHO.