В тази програма ще се научите да показвате всички армстронг числа между два зададени интервала, нисък и висок, като използвате функция в Kotlin.
За да се намерят всички армстронг числа между две цели числа, checkArmstrong()
се създава функция. Тази функция проверява дали даден номер е армстронг или не.
Пример: Числа на Армстронг между две цели числа
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 )
Когато стартирате програмата, изходът ще бъде:
1634 8208 9474 54748 92727 93084
В горната програма създадохме функция с име, checkArmstrong()
която приема параметър num и връща булева стойност.
Ако номерът е армстронг, той се връща true
. Ако не, връща се false
.
Въз основа на възвръщаемата стойност, номерът се отпечатва на вътрешната main()
функция на екрана .
Ето еквивалентния Java код: Java програма за проверка на номера на Армстронг с помощта на функция.