V tomto programe sa naučíte zobrazovať všetky ozbrojené čísla medzi dvoma danými intervalmi, nízkym a vysokým, pomocou funkcie v Kotline.
Na nájdenie všetkých silných čísel medzi dvoma celými číslami checkArmstrong()
je vytvorená funkcia. Táto funkcia kontroluje, či je číslo silné alebo nie.
Príklad: Armstrong čísla medzi dvoma celými číslami
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 )
Po spustení programu bude výstup:
1634 8208 9474 54748 92727 93084
Vo vyššie uvedenom programe sme vytvorili funkciu s názvom, checkArmstrong()
ktorá prevezme parameter num a vráti boolovskú hodnotu.
Ak je číslo silné, vráti sa true
. Ak nie, vráti sa false
.
Na základe návratovej hodnoty sa číslo vytlačí na obrazovku vo vnútri main()
funkcie.
Tu je ekvivalentný kód Java: Program Java na kontrolu Armstrongovho čísla pomocou funkcie.