Programa de Kotlin para mostrar el número Armstrong entre dos intervalos

En este programa, aprenderá a mostrar todos los números de Armstrong entre dos intervalos dados, bajo y alto, en Kotlin.

Un entero positivo se llama número de Armstrong de orden n si

abcd… = a n + b n + c n + d n +…

En el caso de un número Armstrong de 3 dígitos, la suma de los cubos de cada dígito es igual al número en sí. Por ejemplo:

 153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 es un número de Armstrong. 

Este programa se basa en el concepto de cómo verificar si un entero es un número de Armstrong o no.

Ejemplo: números de Armstrong entre dos enteros

 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 ") ) ) 

Cuando ejecute el programa, la salida será:

 1634 8208 9474 54748 92727 93084 

En el programa anterior, se comprueba cada número entre el intervalo alto y bajo dado.

Después de cada verificación, el número de dígitos y el resultado de la suma se restablecen a 0.

Articulos interesantes...