Skip to content

Conversation

minh-swinburne
Copy link
Contributor

@minh-swinburne minh-swinburne commented Nov 24, 2024

Replace != in (year % 400) != 0 (line 49) with ==

Justification: Years that are divisible by 100 (centurian == 100) but not by 400 (year % 400 != 0) are skipped and NOT leap year.

Describe your change:

  • Add an algorithm?
  • Fix a bug or typo in an existing algorithm?
  • Add or change doctests? -- Note: Please avoid changing both code and tests in a single pull request.
  • Documentation change?

Checklist:

  • I have read CONTRIBUTING.md.
  • This pull request is all my own work -- I have not plagiarized.
  • I know that pull requests will not be merged if they fail the automated tests.
  • This PR only changes one algorithm file. To ease review, please open separate PRs for separate algorithms.
  • All new Python files are placed inside an existing directory.
  • All filenames are in all lowercase characters with no spaces or dashes.
  • All functions and variable names follow Python naming conventions.
  • All function parameters and return values are annotated with Python type hints.
  • All functions have doctests that pass the automated testing.
  • All new algorithms include at least one URL that points to Wikipedia or another similar explanation.
  • If this pull request resolves one or more open issues then the description above includes the issue number(s) with a closing keyword: "Fixes #ISSUE-NUMBER".

Replace `!=` in `(year % 400) != 0` (line 49) with `==`

Justification: Years that are divisible by 100 (centurian == 100) but not by 400 (year % 400 != 0) are skipped and NOT leap year.
@algorithms-keeper algorithms-keeper bot added the tests are failing Do not merge until tests pass label Nov 24, 2024
@minh-swinburne minh-swinburne changed the title Fix leap year check Doomsday Algorithm: Fix leap year check Nov 24, 2024
Copy link
Contributor

@imSanko imSanko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Parenthesize a and b expressions when chaining and and or together, to make the precedence clear

@algorithms-keeper algorithms-keeper bot removed the tests are failing Do not merge until tests pass label Dec 1, 2024
Correct the parentheses to make clear the precedence of the conditional check
@algorithms-keeper algorithms-keeper bot added the awaiting reviews This PR is ready to be reviewed label Dec 1, 2024
Copy link
Contributor Author

@minh-swinburne minh-swinburne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've changed the incorrect conditional operator and ensure clarity using parentheses

@tianyizheng02 tianyizheng02 added awaiting changes A maintainer has requested changes to this PR and removed awaiting reviews This PR is ready to be reviewed labels Dec 31, 2024
Co-authored-by: Tianyi Zheng <tianyizheng02@gmail.com>
@tianyizheng02 tianyizheng02 merged commit 533767f into TheAlgorithms:master Jan 18, 2025
5 checks passed
@isidroas isidroas mentioned this pull request Jan 25, 2025
14 tasks
@minh-swinburne minh-swinburne deleted the patch-1 branch January 28, 2025 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting changes A maintainer has requested changes to this PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants