# How to Check Leap Year in PowerShell

## Introduction

In this blog post, we will walk through how to check leap year in PowerShell.

## Solution

### Using System.DateTime Class from .NET Framework

We can use static method from `System.DateTime`

class to check leap year as in following example:

```
$year = 2024
[System.DateTime]::IsLeapYear($year)
```

The output of above script is `true`

because 2024 is a leap year. But, if we change the year to 2018, the output will be `false`

.

### Using arithmetic and logical operator

By definition, a leap year must be divisible by 4 unless the year is divisible by 100 as well but not by 400. So, we can create simple algorithm combining arithmetic and logical operator to check leap year as follows:

```
$year = 4000
$isLeapYear = $year % 4 -eq 0 -and ($year % 100 -ne 0 -or $year % 400 -eq 0)
Write-Host $isLeapYear
```

The result of above script is true. However, if the year is changed to 4100, the result will be false because even though 4100 is divisible by 4 and 100, it’s not divisible by 400.

## Conclusion

In conclusion, to check leap year in PowerShell we can use `IsLeapYear`

static method from .NET Framework. Besides that, we can also implement simple algorithm from scratch to check leap year.