Kotlina programma, lai pārbaudītu, vai skaitlis ir vai nav Palindroms

Šajā programmā jūs iemācīsities pārbaudīt, vai Kotlinā numurs ir palindroms. Tas tiek darīts, izmantojot while loop.

Piemērs: Palindroma pārbaudes programma

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

Palaidot programmu, izeja būs:

 121 ir palindroms.

Piezīme. Jūs varat mainīt num vērtību, sakot 11221, un, palaižot programmu, izeja būs:

 11221 nav palindroms.

Šeit ir ekvivalents Java kods: Java programma Palindrome numura pārbaudei

Šajā programmā

  • Pirmkārt, norādītā skaitļa (num) vērtība tiek saglabāta citā vesela skaitļa mainīgajā - originalInteger. Tas ir tāpēc, ka mums ir jāsalīdzina apgrieztā skaitļa un sākotnējā skaitļa vērtības beigās.
  • Pēc tam, kamēr cilpa tiek izmantota, lai ciklētu caur num, līdz tā ir vienāda ar 0.
    • Katrā atkārtojumā atlikušais ciparu cipars tiek saglabāts.
    • Tad atlikumu pievieno reversedInteger tā, lai tas tiktu pievienots nākamajai vietas vērtībai (reizinot ar 10).
    • Pēc tam pēdējais cipars tiek noņemts no numura pēc dalīšanas ar 10.
  • Visbeidzot, tiek salīdzināti reversedInteger un originalInteger. Ja tas ir vienāds, tas ir palindroms skaitlis. Ja nē, tas tā nav.

Šeit ir izpildes darbības, kas notiek:

Palindroma izpildes soļi
num skaits! = 0 atlikušo reversedInteger
121 taisnība 1 0 * 10 + 1 = 1
12 taisnība 2 1 * 10 + 2 = 12
1 taisnība 1 12 * 10 + 1 = 121
0 nepatiesa - 121

Interesanti raksti...