Problem
An extra day is added to the calendar almost every four years as February 29, and the day is called a leap day. It corrects the calendar for the fact that our planet takes approximately 365.25 days to orbit the sun. A leap year contains a leap day.
In the Gregorian calendar, three conditions are used to identify leap years:
- The year can be evenly divided by 4, is a leap year, unless:
- The year can be evenly divided by 100, it is NOT a leap year, unless:
- The year is also evenly divisible by 400. Then it is a leap year.
- The year can be evenly divided by 100, it is NOT a leap year, unless:
This means that in the Gregorian calendar, the years 2000 and 2400 are leap years, while 1800, 1900, 2100, 2200, 2300 and 2500 are NOT leap years. Source
Task
Given a year, determine whether it is a leap year. If it is a leap year, return the Boolean True
, otherwise return False
.
Note that the code stub provided reads from STDIN and passes arguments to the is_leap
function. It is only necessary to complete the is_leap
function.
Input Format
Read year, the year to test.
Constraints
1900 ≤ year ≤ 105
Output Fortmat
The function must return a Boolean value (True/False). Output is handled by the provided code stub.
Sample Input 0
1990
Sample Output 0
False
Explanation 0
1990 is not a multiple of 4 hence it’s not a leap year.
Solution to HackerRank Write a Function In Python
In this problem, we are to check if the given year is a leap year or not.
def is_leap(year): leap = False # Write your logic here return leapyear = int(input())print(is_leap(year))
Alternatively
def is_leap(year): return (year%4 == 0) and ((year%100 != 0) or (year%400 == 0))year = int(input())print(is_leap(year))
Comments
Post a Comment