Kotlin Program to Check for Leap Year

Greetings!
We have recently published 100+ articles on android tutorials with kotlin and java. If you need, you may visit Android Tutorial for beginners page. You can also check Kotlin Tutorial for beginners. Also, if you are interested in content writing, you can mail us at tutorialwing@gmail.com.

In this post, we will go through Kotlin Program to Check for Leap Year.

A given year is leap year if it satisfies below condition –

  • 1. Year is multiple of 400
  • 2. Year is multiple of 4 but not of 100

1. Kotlin Program to Check for leap year

import java.util.*

fun main() {

    val read = Scanner(System.`in`)

    println("Enter Year:")
    val year = read.nextInt()

    val msg = if(checkLeapYear(year)) {
        "Given year is a leap year."
    } else {
        "Given year is not a leap year."
    }

    println(msg)
}

/**
 * Function that check whether given year is leap year or not.
 */
private fun checkLeapYear(year: Int): Boolean {
    return ((year % 400) == 0)
            || (((year % 4) == 0) && ((year % 100) != 0))
}

When you run the program, output will be

Enter Year:
2020
Given year is a leap year.

Here, we have created an object of Scanner. Scanner takes an argument which says where to take input from.
System.`in` means take input from standard input – Keyboard.

read.nextIn() means read anything entered by user before space or line break from standard input – Keyboard.
Input read by scanner is then stored in variable year

checkLeapYear checks whether given year is leap year or not. If yes, it returns true. Otherwise, it returns false.

Finally, we print result value using println() method.

2. Check leap year Using when Block

In the previous example, we used if-else block. Now, we will use when block in kotlin to check for leap leap.

import java.util.*

fun main() {

    val read = Scanner(System.`in`)

    println("Enter Year:")
    val year = read.nextInt()

    val msg = if(checkLeapYear(year)) {
        "Given year is a leap year."
    } else {
        "Given year is not a leap year."
    }

    println(msg)
}

/**
 * Function that check whether given year is leap year or not.
 */
private fun checkLeapYear(year: Int): Boolean {
    return when {
        ((year % 400 == 0) ||  (((year % 4) == 0) && ((year % 100) != 0))) -> true
        else -> false
    }
}

When you run the program, output will be

Enter Year:
2021
Given year is not a leap year.

Here, we have created an object of Scanner. Scanner takes an argument which says where to take input from.
System.`in` means take input from standard input – Keyboard.

read.nextIn() means read anything entered by user before space or line break from standard input – Keyboard.
Input read by scanner is then stored in variable year

checkLeapYear checks whether given year is leap year or not. If yes, it returns true. Otherwise, it returns false.
Note: We have used when expression in this example just to show how to use when expression in this case.

Finally, we print result value using println() method.

Support Us

If you like Tutorialwing and would like to contribute, you can email an article on any educational topic at tutorialwing@gmail.com. We would love to publish your article. See your article on Tutorialwing and help others with your knowledge. Follow Facebook, LinkedIn, Google+, Twitter, Youtube for latest updates.
Greetings!
We have recently published 100+ articles on android tutorials with kotlin and java. If you need, you may visit Android Tutorial for beginners page. You can also check Kotlin Tutorial for beginners