dovresti usare i tag code per postare il codice (aumenti la leggibilità dello stesso).
Seconda cosa, tu hai questa espressione
giorno > 0 && giorno < 32 && mese !=2
che controlla 2 variabili, giorno e mese.
Nell'ordine, si parte da giorno > 0 , se valida controlla giorno < 32, se valida controlla mese != 2. La condizione sul mese è controllata per ultima, sempre che le prime 2 siano true (vale la regola dello short circuit, in and la prima false si ferma perché è tutto false).
Quindi, quanto valgono giorno e mese?