Program Kotlin k zobrazení Armstrongova čísla mezi dvěma intervaly

V tomto programu se naučíte zobrazovat všechna silná čísla mezi dvěma danými intervaly, nízkými a vysokými, v Kotlině.

Kladné celé číslo se nazývá Armstrongovo číslo řádu n if

abcd… = a n + b n + c n + d n +…

V případě Armstrongova počtu 3 číslic se součet kostek každé číslice rovná číslu samotnému. Například:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 je číslo Armstrong. 

Tento program je postaven na konceptu, jak zkontrolovat, zda je celé číslo Armstrongovo číslo nebo ne.

Příklad: Armstrongova čísla mezi dvěma celými čísly

 fun main(args: Array) ( val low = 999 val high = 99999 for (number in low + 1… high - 1) ( var digits = 0 var result = 0 var originalNumber = number // number of digits calculation while (originalNumber != 0) ( originalNumber /= 10 ++digits ) originalNumber = number // result contains sum of nth power of its digits while (originalNumber != 0) ( val remainder = originalNumber % 10 result += Math.pow(remainder.toDouble(), digits.toDouble()).toInt() originalNumber /= 10 ) if (result == number) print("$number ") ) ) 

Když spustíte program, výstup bude:

 1634 8208 9474 54748 92727 93084 

Ve výše uvedeném programu je kontrolováno každé číslo mezi daným intervalem vysoké a nízké.

Po každé kontrole se počet číslic a výsledek součtu obnoví na 0.

Zajímavé články...