Let's break it down:
Hyper Beam does 150 damage over 2 turns, which becomes 75 damage per down on average. It's strong but leaves Charizard vulnerable the second turn if the opponent survives. Its accuracy is 90%, and it has a measly 5 PP
Fly does 70 base damage, and since Charizard is dualled as a flying type, it recieves STAB, making the base damage of Fly 105. Seeing as Fly hits on the 2nd turn, this averages out to 52.5 damage per turn. Less powerful, no doubt, but it has 15 PP and has 95% accuracy.
... in conclusion after all that crap, Fly is the prefered move for Charizard for a physical attack, tho hyper beam is good to finish off opponents, it's not always reliable (10% miss chance is not that low) and it leaves charizard vulnerable to an attack afterwards. While Fly is weaker, it has more pp to last the battle, and that nice 5% more to hit, plus is avoids an attack as you fly up, making it superior to hyper beam on a charizard =D
i hope this has helped =D
(incase you were wondering, charizard should learn fly instead of hyper beam)
Frank