First you need to understand that max pin voltage is not 5volt, but VCC+0.3volt.
So if the Arduino is off, then max pin voltage is 0 + 0.3 = 0.3volt.
A 5volt zener wont protect tyhe pin in that scenario.
Secondly, a zener is not ideal. It starts already "leaking" below 5volt, spoiling your upper measurement range.
Clamping diodes just dump any input voltage above VCC on the power rail.
A second clamping diode to ground stops negative voltages.
The resistor protects the diodes against too high fault currents, which also would have been needed in your zener circuit.
Schottky diodes are needed here because of their lower threshold voltage.
The 1N5819 is a good choice.
The 3.3volt label should be 5volt for a Mega.
Leo..
