Course
Introduction
Print an Integer (Entered by the User)Add Two IntegersMultiply two Floating Point NumbersFind ASCII value of a characterCompute Quotient and RemainderSwap Two NumbersCheck Whether a Number is Even or OddFind the Frequency of Character in a StringRemove All Whitespaces from a StringRound a Number to n Decimal PlacesDecision Making and Loop
Check Whether an Alphabet is Vowel or ConsonantFind the Largest Among Three NumbersFind all Roots of a Quadratic EquationCheck Leap YearCheck Whether a Number is Positive or NegativeCheck Whether a Character is Alphabet or NotCalculate the Sum of Natural NumbersFind Factorial of a NumberGenerate Multiplication TableDisplay Fibonacci SeriesFind GCD of two NumbersFind LCM of two NumbersDisplay Characters from A to Z using loopCount Number of Digits in an IntegerReverse a NumberCalculate the Power of a NumberCheck Whether a Number is Palindrome or NotCheck Whether a Number is Prime or NotDisplay Prime Numbers Between Two IntervalsCheck Armstrong NumberDisplay Armstrong Number Between Two IntervalsDisplay Factors of a NumberMake a Simple Calculator Using switch...caseCount the Number of Vowels and Consonants in a SentenceSort Elements in Lexicographical Order (Dictionary Order)Create Pyramid and PatternFunctions
Display Prime Numbers Between Intervals Using FunctionDisplay Armstrong Numbers Between Intervals Using FunctionCheck Whether a Number can be Expressed as Sum of Two Prime NumbersFind the Sum of Natural Numbers using RecursionFind Factorial of a Number Using RecursionFind G.C.D Using RecursionConvert Binary Number to Decimal and vice-versaConvert Octal Number to Decimal and vice-versaConvert Binary Number to Octal and vice-versaReverse a Sentence Using Recursioncalculate the power using recursionArrays
Calculate Average Using ArraysFind Largest Element in an ArrayCalculate Standard DeviationAdd Two Matrix Using Multi-dimensional ArraysMultiply to Matrix Using Multi-dimensional ArraysMultiply two Matrices by Passing Matrix to a FunctionFind Transpose of a MatrixPrint an ArrayConcatenate Two ArraysConvert Character to String and Vice-VersaCheck if An Array Contains a Given ValueCollections
Join Two ListsConvert List (ArrayList) to Array and Vice-VersaConvert Map (HashMap) to ListConvert Array to Set (HashSet) and Vice-VersaSort a Map By ValuesObject and Class
Add Two Complex Numbers by Passing Class to a FunctionCalculate Difference Between Two Time PeriodsAdvanced
Convert String to DateGet Current Date/TImeConvert Milliseconds to Minutes and SecondsAdd Two DatesGet Current Working DirectoryConvert Byte Array to HexadecimalCreate String from Contents of a FileAppend Text to an Existing FileConvert a Stack Trace to a StringConvert File to byte array and Vice-VersaConvert InputStream to StringConvert OutputStream to StringLookup enum by String valueCompare StringsSort ArrayList of Custom Objects By PropertyCheck if a String is NumericKotlin Program to Check Leap Year
A leap year is exactly divisible by 4 except for century years (years ending with 00). The century year is a leap year only if it is perfectly divisible by 400.
Example 1: Kotlin Program to Check a Leap Year using if else statement
fun main(args: Array<String>) {
val year = 1900
var leap = false
if (year % 4 == 0) {
if (year % 100 == 0) {
// year is divisible by 400, hence the year is a leap year
leap = year % 400 == 0
} else
leap = true
} else
leap = false
println(if (leap) "$year is a leap year." else "$year is not a leap year.")
}
When you run the program, the output will be:
1900 is not a leap year.
In the above program, given year 1900 is stored in the variable year.
- Since 1900 is divisble by 4 and is also a century year (ending with 00), it has be divisble by 400 for a leap year. Since it’s not divisible by 400, 1900 is not a leap year.
- But, if we change the year to 2000, it is divisible by 4, is a century year and is also divisible by 400. So, 2000 is a leap year.
- Likewise, If we change the year to 2012, it is divisible by 4 and is not a century year, so 2012 a leap year. We don’t need to check if 2012 is divisible by 400 or not.
Here’s the equivalent Java code: Java Program to Check Leap Year
Example 2: Kotlin Program to Check Leap Year using when expression
fun main(args: Array<String>) {
val year = 2012
var leap = false
leap = when {
year % 4 == 0 -> {
when {
year % 100 == 0 -> year % 400 == 0
else -> true
}
}
else -> false
}
println(if (leap) "$year is a leap year." else "$year is not a leap year.")
}
When run the program, the output will be:
2012 is a leap year.
In the above program, instead of using an if else statement, we have used a when expression.
The when
expression works as:
- When year is divisible by 4
- Another
when
expression is entered which checks if year is divisible by 100- If yes, it again checks if year is divisble by 400 or not, and returns
true
orfalse
- If yes, it again checks if year is divisble by 400 or not, and returns
- If not divisble by 100, year is not a century year (ending with 00) and returns
true
- Another
- If year is not divisible by 4, it returns
false
Based on the value of leap, it prints the output using an inline if else.