| Contents |
#include <codecogs/units/date/nthweekday.h>
using namespace Units::Date;
| int | nthWeekDay (int Nth, int WeekDay, int Year, int Month, int Type=1) Returns the date of the nth weekday within the specified month and year. | |
| Integer | cc_nthWeekDay (Integer Nth, Integer WeekDay, Integer Year, Integer Month, Integer Type) This function is available as a Microsoft Excel add-in. |
| intnthWeekDay( | int | Nth | |
| int | WeekDay | ||
| int | Year | ||
| int | Month | ||
| int | Type = 1 | ) |
#include <stdio.h> #include <codecogs/units/date/nthweekday.h> #include <codecogs/units/date/dateymd.h> #include <codecogs/units/date/month_str.h> using namespace Units::Date; int main() { int d,m,y; for(int i=2004; i<=2006; i++) { printf("\nIn %d:",i); dateYMD(nthWeekDay(1, Monday, i, May), y,m,d); // First Monday printf("\n May Day Bank Holiday is on: %2d %s",d,month_str(m)); dateYMD(nthWeekDay(0, Monday, i, May), y,m,d); // last Monday printf("\n Spring Bank Holiday is on: %2d %s",d,month_str(m)); dateYMD(nthWeekDay(0, Monday, i, August), y,m,d); // last Monday printf("\n Late Summer Holiday is on: %2d %s",d,month_str(m)); } return 0; }Output:
In 2004: May Day Bank Holiday is on: 3 May Spring Bank Holiday is on: 31 May Late Summer Holiday is on: 30 August In 2005: May Day Bank Holiday is on: 2 May Spring Bank Holiday is on: 30 May Late Summer Holiday is on: 29 August In 2006: May Day Bank Holiday is on: 1 May Spring Bank Holiday is on: 29 May Late Summer Holiday is on: 28 August
| Nth | identifies which WeekDay from the start of the month to obtain (e.g. the 1st Friday, 3rd Monday). A zero value will return the date of the last WeekDay, with negative values returning earlier weekdays from the end of the month. |
| WeekDay | is the day of the week required, with its value depending upon the Type (see below). |
| Year | can be any integer greater than 4800 BC (-4799). |
| Month | contains the month of the year. This value must be within the range -9 to 14 (inclusive), though value outside the range 1-12 will be divided by by 12, such that the Year incremented by the quotient and the Month set to the remainder. |
| Type | defines the input form for the WeekDay: |