Program to check if a given year is leap year

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

  1. Year is multiple of 400.
  2. Year is multiple of 4 and not multiple of 100.

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++

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 muliplt of 100,
    // then it is not a leap year
    if (year % 100 == 0)
        return false;
 
    // Else If a year is muliplt 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

chevron_right


C

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 muliplt of 100,
    // then it is not a leap year
    if (year % 100 == 0)
        return false;
 
    // Else If a year is muliplt 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;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 muliplt of 100,
        // then it is not a leap year
        if (year % 100 == 0)
            return false;
     
        // Else If a year is muliplt 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" );
    }
}

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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 muliplt of 100,
        // then it is not a leap year
        if (year % 100 == 0)
            return false;
     
        // Else If a year is muliplt 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

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?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 muliplt 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
?>

chevron_right


Output: 

Leap Year

How to write the above code in one line? 



C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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

chevron_right


C

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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" );
    }
}

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?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
?>

chevron_right


Output: 

Leap Year

Check Leap Year using Macros in C/C++

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

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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;
}

chevron_right


Output

1

Short Solution in Python :
 

Python

filter_none

edit
close

play_arrow

link
brightness_4
code

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

chevron_right


Output

Leap Year



My Personal Notes arrow_drop_up

Article Tags :
Practice Tags :


11


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.