First thing as people have said is you need xcode, its in the app store (mac one) and its free. You also need a mac since since xcode is mac only.
Second thing you need to figure out who you want to make apps, what kind of apps, and what language you are going to learn. This is the most important part.
Your options are Objective-C for totally native apps. You can make any kind of app you want but its a bitch to learn. Just need time and xcode. On the plus side the best 'book' on how to learn objective-c is the free training apple provides to developers.
You can use HTML5, you can use frameworks such as PhoneGap to turn webpages you make into native app. This is fine for information based stuff, but no games. You may also be limited a bit since this stuff is always being worked on. Worth checking out for simple apps that are content based.
You can learn JavaScript, there are a bunch of frameworks that turn JavaScript and API's into fully working apps. The benefits to this are the apps work on all platforms with some tweaks. The API's allow for fully functional apps no limits and the JavaScript is much easier than Objective-C. This is what I personally use for development. The major frameworks are Appcelerator and SenchTouch for normal apps, If you want games there is CoronaSDK and Cocos2d. I have made apps using both CoronaSDK and Appcelerator its pretty easy. These frameworks all cost extra money and each have their own unique api's you will need to learn and they each have their own limits.
ConronSDK sucks for content apps but is very easy for games and interactive books. You could make a game in a weekend with basic programing know how and tutorials. Bad part its $300/yr.
SenchTouch has no chance of making a game so content only.
PhoneGap is content only also, it 'sort of' supports java games but it wont work. Simple information sites only.
Appcelerator is great for content apps and just just bought a gaming api which they plan to merge into the api but I would say it is still a no go for games.
Cocos2D great for games bad for content. Its FREE which brings a lot of support and tutorials on how to make games. This is what high school classes use, you will see a lot of stuff geared toward making your first game. Books, YouTube, Websites stuff is everywhere.