From 120c33f6513c881cb91cda5a9cee186be7b23ebc Mon Sep 17 00:00:00 2001 From: Adam Russell Date: Sun, 31 Jul 2022 11:30:40 -0400 Subject: Added Fortran solution for 175.1. --- challenge-175/adam-russell/fortran/ch-1.f | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 challenge-175/adam-russell/fortran/ch-1.f diff --git a/challenge-175/adam-russell/fortran/ch-1.f b/challenge-175/adam-russell/fortran/ch-1.f new file mode 100644 index 0000000000..d7148a4ab6 --- /dev/null +++ b/challenge-175/adam-russell/fortran/ch-1.f @@ -0,0 +1,27 @@ +program last_sunday +use datetime_module, only: datetime, timedelta, clock +implicit none + +character(10), dimension(12) :: last_sundays +integer :: month +do month = 1, 12 + last_sundays(month) = last_sunday_month(month, 2022) + write(*, *) last_sundays(month) +end do + +contains + + function last_sunday_month(month, year) result(sunday) + integer, intent(in) :: month, year + integer :: day + character(10) :: sunday + type(datetime) :: date + do day = 20, 31 + date = datetime(year, month, day) + if (date % isValid() .and. date % weekday() == 0) then + write(sunday, '(i4,a1,i0.2,a1,i2)') year, '-', month, '-', day + end if + end do + end function last_sunday_month + +end program last_sunday -- cgit