weekday, a MATLAB code which can determine the day of the week corresponding to a given date; for instance, the battle of Hastings, on 14 October 1066 (Julian Calendar!), was a Saturday.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


weekday is available in a C version and a C++ version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

calendar_nyt, a MATLAB library which shows the correspondence between dates and the New York Times volume and issue number;

calpak, a MATLAB library which makes various calendar calculations;

dates, a dataset directory which contains lists of dates in various calendar systems.

doomsday, a MATLAB code which is given the year, month and day of a date, and uses John Conway's doomsday algorithm to determine the corresponding day of the week.

test_values, a MATLAB code which supplies test values of various mathematical functions.


weekday_zeller, a MATLAB code which uses Zeller's congruence to determine the day of the week corresponding to a given date, such as 13 July 1989, Gregorian calendar, ... which was a Thursday.


  1. Lewis Carroll (Charles Dodgson),
    To Find the Day of the Week for Any Given Date,
    Volume 35, Number 909, 31 March 1887, page 517.
  2. Gary Meisters,
    Lewis Carroll's Day-of-the-Week Algorithm,
    Math Horizons,
    November 2002, pages 24-25.
  3. Edward Reingold, Nachum Dershowitz,
    Calendrical Calculations: The Millennium Edition,
    Cambridge University Press, 2001,
    ISBN: 0-521-77752-6,
    LC: CE12.R45.
  4. Edward Richards,
    Mapping Time, The Calendar and Its History,
    Oxford, 1999,
    ISBN: 0-19-850413-6,
    LC: CE11.R5.

Source Code:

Last revised on 21 June 2021.