I det här programmet lär du dig att visa alla armstrongtal mellan två givna intervall, låg och hög, i Kotlin.
Ett positivt heltal kallas ett Armstrong antal ordningar n if
abcd … = a n + b n + c n + d n + …
I fallet med ett Armstrong-antal på tre siffror är summan av kuberna för varje siffror lika med själva antalet. Till exempel:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 är ett Armstrong-tal.
Detta program bygger på konceptet för hur man kontrollerar om ett heltal är ett Armstrong-nummer 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) ( 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 ") ) )
När du kör programmet blir resultatet:
1634 8208 9474 54748 92727 93084
I ovanstående program kontrolleras varje nummer mellan det angivna intervallet högt och lågt.
Efter varje kontroll återställs antalet siffror och summan till 0.