The program seemed to run but got some errors after entering the date, not sure what they mean though.
Enter date: 23 Oct 2222
Use of uninitialized value $month in concatenation (.) or string at ./
+dateWork line 9, <STDIN> line 1.
Use of uninitialized value $year in concatenation (.) or string at ./d
+ateWork line 9, <STDIN> line 1.
23 Oct 2222
Use of uninitialized value $month in hash element at ./dateWork line 1
+5, <STDIN> line 1.
Use of uninitialized value $month_n in concatenation (.) or string at
+./dateWork line 16, <STDIN> line 1.
Use of uninitialized value $year in concatenation (.) or string at ./d
+ateWork line 16, <STDIN> line 1.
23 Oct 2222