**Counting Sundays**

**Problem 19**

You are given the following information, but you may prefer to do some research for yourself.

- 1 Jan 1900 was a Monday.
- Thirty days has September,

April, June and November.

All the rest have thirty-one,

Saving February alone,

Which has twenty-eight, rain or shine.

And on leap years, twenty-nine. - A leap year occurs on any year evenly divisible by 4, but not on a century unless it is divisible by 400.

How many Sundays fell on the first of the month during the twentieth century (1 Jan 1901 to 31 Dec 2000)?

This was a simple one where I just create a sequence of dates for 1^{st} of every month in the duration given using `seq`

and then get the weekday of those dates and count the number of days that were Sunday.

get_number_of_days_in_timerange = function(start_date, end_date, day) { sum(weekdays(seq(as.Date(start_date), as.Date(end_date), by = "1 month")) == day) } get_number_of_days_in_timerange("1901-01-01", "2000-12-31", "Sunday") #[1] 171

Advertisements