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 etapidarv | 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 |