Kotlina programma, lai pārbaudītu gadu

Šajā programmā jūs iemācīsities pārbaudīt, vai dotais gads Kotlīnā ir lēciena gads vai nav. Tas tiek pārbaudīts, izmantojot paziņojumu if else un when.

Pārlēktais gads ir precīzi dalāms ar 4, izņemot gadsimta gadus (gadus, kas beidzas ar 00). Gadsimta gads ir lēciena gads tikai tad, ja tas ir pilnīgi dalāms ar 400.

1. piemērs: Kotlin programma, lai pārbaudītu Leap Year, izmantojot if else paziņojumu

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

Palaidot programmu, izeja būs:

 1900. gads nav lēciena gads.

Iepriekš minētajā programmā 1900. gads tiek glabāts mainīgajā gadā.

  • Tā kā 1900. gads dalās ar 4 un ir arī gadsimta gads (beidzas ar 00), tad tā garāžā ir dalāma ar 400. Tā kā tas nav dalāms ar 400, 1900. gads nav lēciens.
  • Bet, ja mēs mainām gadu uz 2000. gadu, tas dalās ar 4, ir gadsimta gads un dalās arī ar 400. Tātad 2000. gads ir lēciena gads.
  • Tāpat, ja mēs mainām gadu uz 2012. gadu, tas dalās ar 4 un nav gadsimta gads, tātad 2012. gads ir garais gads. Mums nav jāpārbauda, ​​vai 2012. gads ir dalāms ar 400 vai nē.

Šeit ir ekvivalents Java kods: Java programma, lai pārbaudītu Leap Year

2. piemērs: Kotlin programma, lai pārbaudītu Leap Year, izmantojot izteiksmi

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

Palaidot programmu, izeja būs:

 2012. gads ir lēciena gads.

Iepriekš minētajā programmā tā vietā, lai izmantotu paziņojumu if else, mēs izmantojām izteicienu When.

whenIzteiksme darbojas kā:

  • Kad gads dalās ar 4
    • whenTiek ievadīts vēl viens izteiciens, kas pārbauda, ​​vai gads dalās ar 100
      • Ja jā, tā atkal pārbauda, ​​vai gads dalās ar 400, vai nē, un atgriež truevaifalse
    • Ja tas nav dalāms ar 100, gads nav gadsimta gads (kas beidzas ar 00) un atgriežas true
  • Ja gads nav dalāms ar 4, tas atgriežas false

Pamatojoties uz lēciena vērtību, tas izdrukā produkciju, izmantojot inline, ja citādi.

Interesanti raksti...