В этой программе вы научитесь отображать все числа Армстронга между двумя заданными интервалами, низким и высоким, на Java.
Чтобы понять этот пример, вы должны знать следующие темы программирования Java:
- Java while и do … while Loop
- Заявление Java if… else
- Java для цикла
Положительное целое число называется числом Армстронга порядка n, если
abcd… = a n + b n + c n + d n +…
В случае числа Армстронга из 3 цифр сумма кубиков каждой цифры равна самому числу. Например:
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 // 153 - это число Армстронга.
Эта программа построена на принципе проверки того, является ли целое число числом Армстронга или нет.
Пример: числа Армстронга между двумя целыми числами
public class Armstrong ( public static void main(String() args) ( int low = 999, high = 99999; for(int number = low + 1; number < high; ++number) ( int digits = 0; int result = 0; int 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) ( int remainder = originalNumber % 10; result += Math.pow(remainder, digits); originalNumber /= 10; ) if (result == number) System.out.print(number + " "); ) ) )
Вывод
1634 8208 9474 54748 92727 93084
В приведенной выше программе проверяется каждое число между максимальным и минимальным значениями данного интервала.
После каждой проверки количество цифр и результат суммы восстанавливается до 0.