mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2026-03-13 15:21:15 +08:00
feat: Test running overhaul, switch to Prettier & reformat everything (#1407)
* chore: Switch to Node 20 + Vitest * chore: migrate to vitest mock functions * chore: code style (switch to prettier) * test: re-enable long-running test Seems the switch to Node 20 and Vitest has vastly improved the code's and / or the test's runtime! see #1193 * chore: code style * chore: fix failing tests * Updated Documentation in README.md * Update contribution guidelines to state usage of Prettier * fix: set prettier printWidth back to 80 * chore: apply updated code style automatically * fix: set prettier line endings to lf again * chore: apply updated code style automatically --------- Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
This commit is contained in:
@@ -1,6 +1,10 @@
|
||||
// Zeller's Congruence Algorithm finds the day of the week from the Gregorian Date. Wikipedia: https://en.wikipedia.org/wiki/Zeller%27s_congruence
|
||||
export const zellersCongruenceAlgorithm = (day, month, year) => {
|
||||
if (typeof day !== 'number' || typeof month !== 'number' || typeof year !== 'number') {
|
||||
if (
|
||||
typeof day !== 'number' ||
|
||||
typeof month !== 'number' ||
|
||||
typeof year !== 'number'
|
||||
) {
|
||||
throw new TypeError('Arguments are not all numbers.')
|
||||
}
|
||||
const q = day
|
||||
@@ -11,8 +15,13 @@ export const zellersCongruenceAlgorithm = (day, month, year) => {
|
||||
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
|
||||
(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',
|
||||
|
||||
Reference in New Issue
Block a user