Kotlin-programma om schrikkeljaar te controleren

In dit programma leer je controleren of het gegeven jaar een schrikkeljaar is of niet in Kotlin. Dit wordt gecontroleerd met een if else-statement en een when-statement.

Een schrikkeljaar is exact deelbaar door 4 behalve eeuwjaren (jaren eindigend op 00). Het eeuwjaar is alleen een schrikkeljaar als het perfect deelbaar is door 400.

Voorbeeld 1: Kotlin-programma om een ​​schrikkeljaar te controleren met if else-instructie

 fun main(args: Array) ( 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.") )

Wanneer u het programma uitvoert, is de uitvoer:

 1900 is geen schrikkeljaar.

In het bovenstaande programma wordt het opgegeven jaar 1900 opgeslagen in het variabele jaar.

  • Aangezien 1900 deelbaar is door 4 en ook een eeuwjaar is (eindigend op 00), moet het deelbaar zijn door 400 voor een schrikkeljaar. Omdat het niet deelbaar is door 400, is 1900 geen schrikkeljaar.
  • Maar als we het jaar veranderen in 2000, is het deelbaar door 4, is het een eeuwjaar en is het ook deelbaar door 400. Dus 2000 is een schrikkeljaar.
  • Evenzo, als we het jaar veranderen in 2012, is het deelbaar door 4 en is het geen eeuwjaar, dus 2012 een schrikkeljaar. We hoeven niet te controleren of 2012 deelbaar is door 400 of niet.

Hier is de equivalente Java-code: Java-programma om schrikkeljaar te controleren

Voorbeeld 2: Kotlin-programma om schrikkeljaar te controleren met when-uitdrukking

 fun main(args: Array) ( 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.") )

Wanneer het programma wordt uitgevoerd, is de uitvoer:

 2012 is een schrikkeljaar.

In het bovenstaande programma hebben we in plaats van een if else-instructie een when-uitdrukking gebruikt.

De whenuitdrukking werkt als:

  • Wanneer jaar deelbaar is door 4
    • Er wordt een andere whenuitdrukking ingevoerd die controleert of het jaar deelbaar is door 100
      • Zo ja, dan controleert het opnieuw of het jaar deelbaar is door 400 of niet, en geeft trueof terugfalse
    • Als het niet deelbaar is door 100, is jaar geen eeuwig jaar (eindigend op 00) en wordt het geretourneerd true
  • Als jaar niet deelbaar is door 4, keert het terug false

Op basis van de waarde van de sprong, wordt de uitvoer afgedrukt met een inline als anders.

Interessante artikelen...