Write a Function in Python | HackerRank Solution

Hey coders, today we will be solving Write a Function Hacker Rank Solution in Python.

Write a Function in Python - Hacker Rank Solution

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.

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. 

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 <= 10^5

Output Format

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 – Write a Function in Python – Hacker Rank Solution

def is_leap(year):
    leap = False
    
    # Write your logic here
    if (year % 400 == 0):
        return True
    if (year % 100 == 0):
        return leap
    if (year % 4 == 0):
        return True
    else:
        return False  
    
    return leap

year = int(input())
print(is_leap(year))

Disclaimer: The above Problem (Write a Function) is generated by Hacker Rank but the Solution is provided by CodingBroz. This tutorial is only for Educational and Learning Purposes.

5 thoughts on “Write a Function in Python | HackerRank Solution”

  1. What is leap = false in this code? And why have you returned leap in the second conditional?
    Please help in knowing this, I’m new to coding.

  2. def leap_year(year):
    if(year%4==0 and year%400==0 ):
    print(“leap year”)
    else:
    print(“not”)
    year=int(input())
    print(leap_year(year))

  3. leap value assigned to “false” by default (before checking the given year).
    So in this case returning “false” or leap in the second conditional doesn’t make any difference.

    I understand the intention of the code block as it fullfils the exact requirement of the given task, but the check for the leap year could be following:

    def is_leap(year):
    leap = False
    if (year % 400 == 0):
    return True
    else:
    return False
    return leap
    year = int(input())
    print(is_leap(year))

  4. For this problem we can also use simple if statement in it.
    def is_leap(year):
    if (year % 400 == 0):
    return True
    elif (year % 100 == 0):
    return leap
    elif (year % 4 == 0):
    return True

    return False

    year = int(input())
    print(is_leap(year))

  5. def is_leap(year):
    leap = False
    # Write your logic here
    if year%4==0:
    if year%100==0:
    if year%400==0:
    return True
    else:
    return leap
    else:
    return True
    else:
    return leap

    year = int(input())
    print(is_leap(year))

Leave a Comment

Your email address will not be published. Required fields are marked *