English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
En este programa, aprenderás cómo usar funciones en Java para mostrar todos los números Armstrong entre dos intervalos (bajo y alto)
Para encontrar todos los números Armstrong entre dos enteros, se creará la función checkArmstrong(). Esta funciónVerificar si un número es Armstrong。
public class Armstrong { public static void main(String[] args) { int low = 999, high = 99999; for(int number = low + 1; number < high; ++number) { if (checkArmstrong(number)) System.out.print(number + " "); } } public static boolean checkArmstrong(int num) { int digits = 0; int result = 0; int originalNumber = num; //Cálculo de dígitos while (originalNumber != 0) { originalNumber /= 10; ++digits; } originalNumber = num; //El resultado contiene la suma de los n-ésimos potencias de sus dígitos while (originalNumber != 0) { int remainder = originalNumber % 10; result += Math.pow(remainder, digits); originalNumber /= 10; } if (result == num) return true; return false; } }
Al ejecutar el programa, la salida es:
1634 8208 9474 54748 92727 93084
En el programa anterior, creamos una función llamada checkArmstrong() que toma un parámetro num y devuelve un valor booleano.
Si el número es un número de Armstrong, devuelve true. De lo contrario, devuelve false.
Imprimir y escribir números en la función main() en función del valor de retorno.