# 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 ``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 ``#include ` `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

 ``

## Javascript

 ``

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 ``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 ``#include ` `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

 ``

## Javascript

 ``

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

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