I det här programmet lär du dig att visa alla armstrongtal mellan två givna intervall, låg och hög, med hjälp av en funktion i Kotlin.
För att hitta alla armstrongtal mellan två heltal checkArmstrong()
skapas funktion. Denna funktion kontrollerar om ett tal är armstrong eller inte.
Exempel: Armstrong siffror mellan två heltal
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 )
När du kör programmet blir resultatet:
1634 8208 9474 54748 92727 93084
I ovanstående program har vi skapat en funktion med namnet checkArmstrong()
som tar en parameter num och returnerar ett booleskt värde.
Om siffran är armstrong återgår den true
. Om inte, återkommer den false
.
Baserat på returvärdet skrivs nummer ut på skärmens inre main()
funktion.
Här är motsvarande Java-kod: Java-program för att kontrollera Armstrong-nummer med funktion.