Replace the line:
if (A0 == HIGH) {
by this one:
if (digitalRead(A0) == HIGH) {
If you plan on using the pin back as an analog input, use something like this:
if (analogRead(A0) > 512) {
The explanation is what Ignacio said: you were comparing the pin "name" A0 directly to HIGH instead of reading from the input named A0. To make it clearer, the two lines are equivalent:
if (A0 == HIGH)
if (0 == HIGH)
Get it?
There's more about what pin names to use with digitalRead() and analogRead() here: