export const zellersCongruenceAlgorithm = (day, month, year) => {
if (
typeof day !== 'number' ||
typeof month !== 'number' ||
typeof year !== 'number'
) {
throw new TypeError('Arguments are not all numbers.')
}
const q = day
let m = month
let y = year
if (month < 3) {
m += 12
y -= 1
}
day =
(q +
Math.floor((26 * (m + 1)) / 10) +
(y % 100) +
Math.floor((y % 100) / 4) +
Math.floor(Math.floor(y / 100) / 4) +
5 * Math.floor(y / 100)) %
7
const days = [
'Saturday',
'Sunday',
'Monday',
'Tuesday',
'Wednesday',
'Thursday',
'Friday'
]
return days[day]
}