Kotlini programm, et kontrollida, kas number on palindroom või mitte

Lang L: none (table-of-contents)

Selles programmis õpite kontrollima, kas number on Kotlinis palindroom või mitte. Selleks kasutatakse while loopi.

Näide: Palindrome'i kontrollimise programm

 fun main(args: Array) ( var num = 121 var reversedInteger = 0 var remainder: Int val originalInteger: Int originalInteger = num // reversed integer is stored in variable while (num != 0) ( remainder = num % 10 reversedInteger = reversedInteger * 10 + remainder num /= 10 ) // palindrome if orignalInteger and reversedInteger are equal if (originalInteger == reversedInteger) println("$originalInteger is a palindrome.") else println("$originalInteger is not a palindrome.") )

Programmi käivitamisel on väljund järgmine:

 121 on palindroom.

Märkus. Võite muuta numbri väärtuse lauseks 11221 ja programmi käivitamisel on väljund:

 11221 ei ole palindroom.

Siin on samaväärne Java-kood: Java-programm Palindrome'i numbri kontrollimiseks

Selles programmis

  • Esiteks, antud numbri (num) väärtus salvestatakse teise täisarvu muutujasse OriginalInteger. Seda seetõttu, et peame võrdlema lõpus pööratud arvu ja algse numbri väärtusi.
  • Seejärel kasutatakse numbri läbimiseks mõnda aega silmust, kuni see on võrdne 0-ga.
    • Igal iteratsioonil salvestatakse numbri viimane number ülejäänud.
    • Seejärel lisatakse ülejäänule väärtus ReversedInteger nii, et see lisatakse järgmisele kohaväärtusele (korrutades kümnega).
    • Seejärel eemaldatakse viimane number numbrist pärast jagamist 10-ga.
  • Lõpuks võrreldakse reversedInteger ja originalInteger. Kui see on võrdne, on see palindroomarv. Kui ei, siis pole.

Siin on toimingud, mis toimuvad:

Palindrome'i täitmise etapid
arv arv! = 0 ülejäänud osa vastupidine täisarv
121 tõsi 1 0 * 10 + 1 = 1
12 tõsi 2 1 * 10 + 2 = 12
1 tõsi 1 12 * 10 + 1 = 121
0 vale - 121

Huvitavad Artiklid...