Honestly, if you don't have a teacher, I wouldn't recommend starting with C++, Java, C, Python, Assembly or any other 'real' programming language.
Since you said one of the main reasons you are learning to program is to make games (let's be honest, that's EVERYBODIES main reason
), I'm going to recommend you actually start out with a game making tool. The aptly-named Gamemaker is a good start. People may hate me for recommending it - admittedly it's not a 'real' programming language. Hell, if you want you don't need to use any code at all. HOWEVER, it gives you a wonderful grasp in the basic parts of putting together a working application, and will slowly ease you into programming. It DOES come with a scripting language for you to use, which will again, help the transition when you decide to start learning a 'real' language. The best part of these tools, however, is the fact that STRAIGHT AWAY you can see the things you've put into the game given shape. Discouragement will be your biggest hurdle, and I always fall off the boat after a long period of coding with little visible gain in my application.
Basically, ease yourself in, with something simpler. Don't go with the hardest language for tough points. Go with something you find enjoyable, that will last you the long run. And, as the Spelunky and Battleships Forever will show, some really awesome games can be made with tools.