in reply to find date given day weekday and a range of months

Not directly, because it's an under-determined problem. Under ordinary circumstances, days in February and days in March that share an ordinal value also share a day of the week. That said, you could perform the necessary search using the DateTime module, like:
use DateTime; for my $mon (8, 9, 10) { if (DateTime->new(year => 2014, month => 10, day => 28)->day_abbr( +) eq 'Thu') { print "Hit: $mon\n"; } }

#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.