Bu programda, Kotlin'de düşük ve yüksek olmak üzere iki belirli aralık arasındaki tüm sabit sayıları görüntülemeyi öğreneceksiniz.
Pozitif bir tam sayıya Armstrong sıra numarası denir.
abcd… = bir n + b n + c n + d n +…
Armstrong sayısının 3 basamak olması durumunda, her basamağın küplerinin toplamı, sayının kendisine eşittir. Örneğin:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153, bir Armstrong numarasıdır.
Bu program, bir tamsayının Armstrong sayısı olup olmadığının nasıl kontrol edileceği kavramı üzerine inşa edilmiştir.
Örnek: İki Tamsayı Arasındaki Armstrong Sayıları
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 ") ) )
Programı çalıştırdığınızda, çıktı:
1634 8208 9474 54748 92727 93084
Yukarıdaki programda, verilen aralık yüksek ve düşük arasındaki her sayı kontrol edilir.
Her kontrolden sonra, basamak sayısı ve toplam sonuç sıfırlanır.