V tomto programu se naučíte zobrazovat všechna ozbrojená čísla mezi dvěma danými intervaly, nízkými a vysokými, pomocí funkce v Kotlin.
Chcete-li najít všechna silná čísla mezi dvěma celými čísly, checkArmstrong()
je vytvořena funkce. Tato funkce kontroluje, zda je číslo silné 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) ( if (checkArmstrong(number)) print("$number ") ) ) fun checkArmstrong(num: Int): Boolean ( var digits = 0 var result = 0 var originalNumber = num // number of digits calculation while (originalNumber != 0) ( originalNumber /= 10 ++digits ) originalNumber = num // 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 == num) return true return false )
Když spustíte program, výstup bude:
1634 8208 9474 54748 92727 93084
Ve výše uvedeném programu jsme vytvořili funkci s názvem, checkArmstrong()
která vezme číslo parametru a vrátí logickou hodnotu.
Pokud je číslo silné, vrátí se true
. Pokud ne, vrátí se false
.
Na základě návratové hodnoty je číslo vytištěno na obrazovce uvnitř main()
funkce.
Zde je ekvivalentní kód Java: Program Java ke kontrole Armstrongova čísla pomocí funkce.