Prima controlli se le due date hanno lo stesso anno, giusto?
E' ovvio che se i due anni sono diversi, significa che uno viene prima dell'altro e che quindi non è necessario andare a verificare sia il mese che il giorno per stabilire se una data precede un'altra.
A parità di anno, si controllano i mesi. I mesi sono Gennaio, Febbraio etc, questi non li puoi verificare semplicemente facendo:
codice:
if gennaio < aprile then . ..
perchè il compilatore fa una verifica lessicografica (ossia in ordina alfabetico), in questo caso, infatti aprile < gennaio.
Potresti fare, in maniera banale (penso che si possa fare in pascal, non sono sicuro).
codice:
const gennaio=1, febbraio=2 .... dicembre=12
e poi provare a vedere se il confronto
codice:
if gennaio<aprile (cioè 1<4)
funziona