Kotlin-program for å sjekke skuddåret

I dette programmet lærer du å sjekke om det gitte året er et skuddår eller ikke i Kotlin. Dette sjekkes ved hjelp av en if else-setning og en når-setning.

Et skuddår er nøyaktig delbart med 4 bortsett fra århundrer (år som slutter med 00). Århundret er bare et skuddår hvis det er helt delelig med 400.

Eksempel 1: Kotlin-program for å sjekke et skuddår ved bruk av hvis annet uttalelse

 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.") )

Når du kjører programmet, vil utdataene være:

 1900 er ikke et skuddår.

I programmet ovenfor er gitt år 1900 lagret i det variable året.

  • Siden 1900 er delt med 4 og er også et århundre år (slutter med 00), har det vært delt med 400 i et skuddår. Siden det ikke kan deles med 400, er ikke 1900 et skuddår.
  • Men hvis vi endrer året til 2000, er det delbart med 4, er et århundreår og er også delbart med 400. 2000 er altså et skuddår.
  • På samme måte, hvis vi endrer året til 2012, er det delbart med 4 og er ikke et århundreår, så 2012 er et skuddår. Vi trenger ikke sjekke om 2012 kan deles med 400 eller ikke.

Her er ekvivalent Java-kode: Java-program for å sjekke skuddår

Eksempel 2: Kotlin-program for å sjekke skuddår ved bruk av uttrykk

 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.") )

Når du kjører programmet, vil utgangen være:

 2012 er et skuddår.

I det ovennevnte programmet, i stedet for å bruke en if else-setning, har vi brukt et når-uttrykk.

Den whenUttrykket virker som:

  • Når året kan deles med 4
    • Det whenlegges inn et annet uttrykk som sjekker om året kan deles med 100
      • Hvis ja, sjekker den igjen om året er delt med 400 eller ikke, og returnerer trueellerfalse
    • Hvis ikke deles med 100, er ikke år et århundre år (slutter med 00) og returnerer true
  • Hvis året ikke kan deles med 4, returnerer det false

Basert på verdien av spranget, skriver det ut utskrifter ved hjelp av en innebygd hvis ikke.

Interessante artikler...