My daughter asked yesterday what an “application” was, which led to a discussion of computer programming. I demonstrated by writing a one-line program in Mathematica that computed the day of the week her birthday landed on every year since she was born. She was not impressed.
Code below; birthday changed for privacy protection.
Module[{bday},
TableForm[
Table[{i, bday = DatePlus["August 1, 2005", {i, "Year"}];
DateString[bday, {"MonthName", " ", "DayShort", ", ", "Year"}],
DateString[bday, "DayName"]}, {i, 0, 7}],
TableHeadings -> {None, {"Birthday", "Date", "Day of Week"}}]]
For extra credit, it’s not hard to generate a histogram showing the distribution of days of the week.
daysOfTheWeek = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
numboHits[dayOfWeek_] :=
Module[{holder},
holder =
Select[
Gather[
Sort[
Table[
DateString[DatePlus["August 1, 2005", {i, "Year"}], "DayName"], {i, 0,
25(*years to check*)}]]], #[[1]] == dayOfWeek &];
If[Length[holder] == 1, Length[holder[[1]]], 0]]BarChart[Map[numboHits[#] &, daysOfTheWeek], ChartLabels -> daysOfTheWeek]