Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Program to check if a given year is leap year

  • Difficulty Level : Easy
  • Last Updated : 31 Mar, 2021

A year is a leap year if the following conditions are satisfied: 

  1. The year is multiple of 400.
  2. The year is multiple of 4 and not multiple of 100.

Hey! Looking for some great resources suitable for young ones? You've come to the right place. Check out our self-paced courses designed for students of grades I-XII

Start with topics like Python, HTML, ML, and learn to make some games and apps all with the help of our expertly designed content! So students worry no more, because GeeksforGeeks School is now here!

 



Following is pseudo-code 

if year is divisible by 400 then is_leap_year
else if year is divisible by 100 then not_leap_year
else if year is divisible by 4 then is_leap_year
else not_leap_year

C++




// C++ program to check if a given
// year is leap year or not
#include <bits/stdc++.h>
using namespace std;
 
bool checkYear(int year)
{
    // If a year is multiple of 400,
    // then it is a leap year
    if (year % 400 == 0)
        return true;
 
    // Else If a year is multiple of 100,
    // then it is not a leap year
    if (year % 100 == 0)
        return false;
 
    // Else If a year is multiple of 4,
    // then it is a leap year
    if (year % 4 == 0)
        return true;
    return false;
}
 
// Driver code
int main()
{
    int year = 2000;
 
    checkYear(year) ? cout << "Leap Year":
                      cout << "Not a Leap Year";
    return 0;
}
 
// This is code is contributed
// by rathbhupendra

C




// C program to check if a given
// year is leap year or not
#include <stdio.h>
#include <stdbool.h>
 
bool checkYear(int year)
{
    // If a year is multiple of 400,
    // then it is a leap year
    if (year % 400 == 0)
        return true;
 
    // Else If a year is multiple of 100,
    // then it is not a leap year
    if (year % 100 == 0)
        return false;
 
    // Else If a year is multiple of 4,
    // then it is a leap year
    if (year % 4 == 0)
        return true;
    return false;
}
 
// driver code
int main()
{
    int year = 2000;
 
    checkYear(year)? printf("Leap Year"):
                   printf("Not a Leap Year");
    return 0;
}

Java




// Java program to check
// for a leap year
     
class Test
{
    static boolean checkYear(int year)
    {
        // If a year is multiple of 400,
        // then it is a leap year
        if (year % 400 == 0)
            return true;
     
        // Else If a year is multiple of 100,
        // then it is not a leap year
        if (year % 100 == 0)
            return false;
     
        // Else If a year is multiple of 4,
        // then it is a leap year
        if (year % 4 == 0)
            return true;
        return false;
    }
         
    // Driver method
    public static void main(String[] args)
    {
        int year = 2000;
        System.out.println( checkYear(2000)? "Leap Year" :
                           "Not a Leap Year" );
    }
}

Python3




# Python program to check leap year or not
def checkYear(year):
    if (year % 4) == 0:
        if (year % 100) == 0:
            if (year % 400) == 0:
                return True
            else:
                return False
        else:
             return True
    else:
        return False
 
# Driver Code
year = 2000
if(checkYear(year)):
    print("Leap Year")
else:
    print("Not a Leap Year")
     
# This code is contributed by Chinmoy Lenka

C#




// C# program to check
// for a leap year
using System;
 
class GFG
{
     
    static bool checkYear(int year)
    {
        // If a year is multiple of 400,
        // then it is a leap year
        if (year % 400 == 0)
            return true;
     
        // Else If a year is multiple of 100,
        // then it is not a leap year
        if (year % 100 == 0)
            return false;
     
        // Else If a year is multiple of 4,
        // then it is a leap year
        if (year % 4 == 0)
            return true;
        return false;
    }
         
    // Driver method
    public static void Main()
    {
        int year = 2000;
        Console.Write( checkYear(year)? "Leap Year" :
                                 "Not a Leap Year" );
    }
 
}
 
// This code is contributed by Sam007

PHP




<?php
// PHP code to check if a given
// year is leap year
 
function checkYear($year)
{
    // If a year is multiple of 400,
    // then it is a leap year
    if ($year % 400 == 0)
        print("Leap Year");
         
    // Else If a year is multiple of 100,
    // then it is not a leap year
    else if ($year % 100 == 0)
        print("Not a Leap Year");
             
    // Else If a year is multiple of 4,
    // then it is a leap year
    else if ($year % 4 == 0)
        print("Leap Year");
         
    else
        print("Not a Leap Year");
}
 
// Driver code
$year = 2000;
 
checkYear($year);
     
// This code is contributed by ash264
?>

Javascript




<script>
 
// Javascript program to check
// for a leap year
 
    function checkYear( year) {
        // If a year is multiple of 400,
        // then it is a leap year
        if (year % 400 == 0)
            return true;
 
        // Else If a year is multiple of 100,
        // then it is not a leap year
        if (year % 100 == 0)
            return false;
 
        // Else If a year is multiple of 4,
        // then it is a leap year
        if (year % 4 == 0)
            return true;
        return false;
    }
 
    // Driver method
      
        let year = 2000;
        document.write(checkYear(2000) ? "Leap Year" : "Not a Leap Year");
 
 
// This code is contributed by shikhasingrajput
 
</script>

Output: 

Leap Year

How to write the above code in one line? 

C++




// One line C program to check if a
// given year is leap year or not
#include <bits/stdc++.h>
using namespace std;
 
bool checkYear(int year)
{
     
    // Return true if year is a multiple
    // 0f 4 and not multiple of 100.
    // OR year is multiple of 400.
    return (((year % 4 == 0) && (year % 100 != 0)) ||
             (year % 400 == 0));
}
 
// Driver code
int main()
{
    int year = 2000;
 
    checkYear(year)? cout << "Leap Year":
                     cout << "Not a Leap Year";
    return 0;
}
 
// This code is contributed by Akanksha Rai

C




// One line C program to check if a
// given year is leap year or not
#include <stdio.h>
#include <stdbool.h>
 
bool checkYear(int year)
{
// Return true if year is a multiple
// 0f 4 and not multiple of 100.
// OR year is multiple of 400.
return (((year % 4 == 0) && (year % 100 != 0)) ||
        (year % 400 == 0));
}
 
// driver code
int main()
{
    int year = 2000;
 
    checkYear(year)? printf("Leap Year"):
                printf("Not a Leap Year");
    return 0;
}

Java




// Java program to check
// for a leap year
     
class Test
{
    static boolean checkYear(int year)
    {
    // Return true if year is a multiple
    // of 4 and not multiple of 100.
    // OR year is multiple of 400.
    return (((year % 4 == 0) && (year % 100 != 0)) ||
            (year % 400 == 0));
    }
         
    // Driver method
    public static void main(String[] args)
    {
        int year = 2000;
        System.out.println(checkYear(2000)? "Leap Year" :
                           "Not a Leap Year" );
    }
}

Python3




# Python program to check leap year
# or not in a single line
 
def checkYear(year):
 
    # Return true if year is a multiple
    # of 4 and not multiple of 100.
    # OR year is multiple of 400.
    return (((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0));
 
# Driver Code
year = 2000
if(checkYear(year)):
    print("Leap Year")
else:
    print("Not a Leap Year")
     
# This code is contributed by Chinmoy Lenka

C#




// C# program to check
// for a leap year
using System;
 
class GFG
{
    static bool checkYear(int year)
    {
        // Return true if year is a multiple
        // of 4 and not multiple of 100.
        // OR year is multiple of 400.
        return (((year % 4 == 0) && (year % 100 != 0)) ||
                (year % 400 == 0));
    }
         
    // Driver method
    public static void Main()
    {
        int year = 2000;
        Console.Write( checkYear(year)? "Leap Year" :
                                 "Not a Leap Year" );
    }
 
}
// This code is contributed by Sam007

PHP




<?php
// PHP code to check if a given
// year is leap year
 
function checkYear($year)
{
     
    // Return true if year is a multiple
    // 0f 4 and not multiple of 100.
    // OR year is multiple of 400.
    return ((($year % 4 == 0) &&
             ($year % 100 != 0)) ||
             ($year % 400 == 0));
}
 
// Driver code
$year = 2000;
 
checkYear($year)? print("Leap Year"):
                  print("Not a Leap Year");
 
// This code is contributed by ash264
?>

Javascript




<script>
// javascript program to check
// for a leap year
    function checkYear(year)
    {
     
        // Return true if year is a multiple
        // of 4 and not multiple of 100.
        // OR year is multiple of 400.
        return (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0));
    }
 
    // Driver method
    var year = 2000;
    document.write(checkYear(2000) ? "Leap Year" : "Not a Leap Year");
 
 
// This code is contributed by gauravrajput1
</script>

Output: 

Leap Year

Check Leap Year using Macros in C/C++

The program outputs 1 if the year is a leap and 0 if it’s not a leap year.

C++




// C++ implementation to check
// if the year is a leap year
// using macros
 
#include <iostream>
using namespace std;
 
// Macro to check if a year
// is a leap year
#define ISLP(y) ((y % 400 == 0) ||\
(y % 100 != 0) && (y % 4 == 0))
        
// Driver Code
int main()
{
    int year = 2020;
    cout << ISLP(year) << "\n";
    return 0;
}

Java




// Java implementation to check
// if the year is a leap year
// using macros
public class Main
{
  // Macro to check if a year
  // is a leap year
  static int ISLP(int y)
  {
    if((y % 400 == 0) ||
       (y % 100 != 0) &&
       (y % 4 == 0))
    {
      return 1;
    }
    else
    {
      return 0;
    }
  }
 
  // Driver code
  public static void main(String[] args)
  {
    int year = 2020;
    System.out.println(ISLP(year));
  }
}
 
// This code is contributed by divyeshrabadiya07.

Python3




# Python3 implementation to check
# if the year is a leap year
# using macros
 
# Macro to check if a year
# is a leap year
def ISLP(y):
  if((y % 400 == 0) or
     (y % 100 != 0) and
     (y % 4 == 0)):
    return 1;
  else:
    return 0;
 
# Driver code
if __name__=='__main__':
 
  year = 2020;
  print(ISLP(year));
 
  # This code is contributed by  Pratham76.

C#




// C# implementation to check
// if the year is a leap year
// using macros
using System;
class GFG {
     
  // Macro to check if a year
  // is a leap year
  static int ISLP(int y)
  {
    if((y % 400 == 0) ||
       (y % 100 != 0) &&
       (y % 4 == 0))
    {
      return 1;
    }
    else
    {
      return 0;
    }
  }
   
  // Driver code
  static void Main()
  {
    int year = 2020;
    Console.WriteLine(ISLP(year));
  }
}
 
// This code is contributed by divyesh072019

Javascript




<script>
// javascript implementation to check
// if the year is a leap year
// using macros
 
  // Macro to check if a year
  // is a leap year
  function ISLP(y)
  {
    if((y % 400 == 0) ||
       (y % 100 != 0) &&
       (y % 4 == 0))
    {
      return 1;
    }
    else
    {
      return 0;
    }
  }
 
  // Driver code
  var year = 2020;
  document.write(ISLP(year));
   
// This code is contributed by Amit Katiyar
</script>
Output
1

Short Solution in Python :
 

Python




def checkYear(year):
    
    # Return true if year is a multiple
    # of 4 and not multiple of 100.
    # OR year is multiple of 400.
    import calendar
    return(calendar.isleap(year))
    
# Driver Code 
year = 2000
if (checkYear(year)):
    print("Leap Year")
else:
    print("Not a Leap Year")
        
# This code is contributed by Chin
Output
Leap Year



My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!