Напишите простую программу на Java для проверки того, является ли заданное число числом дисариум или нет.
1. Дизарийное число
Число называется ДИЗАРИЙ, если сумма его цифр, возведенная в степень их позиций, равна исходному числу.
Например, рассмотрим следующие цифры.
11 + 32 + 53 = 1 + 9 + 125 = 135
81 + 92 = 8 + 81 = 89
11 + 72 + 53 = 1 + 49 + 125 = 175
51 + 12 + 83 = 5 + 1 + 512 = 518
2. Программа Java для поиска числа Дизария
public class Main{public static void main(String[] args) {System.out.println("134 is disarium number " + isDisarium(134));System.out.println("135 is disarium number " + isDisarium(135));System.out.println("136 is disarium number " + isDisarium(136));}static boolean isDisarium(int originalNumber){//Total number of digitsint numberOfDigits = Integer.toString(originalNumber).length();int sumOfDigits = 0; // Initialize sum of termsint tempNum = originalNumber;while(tempNum!=0){// Get the rightmost digitint currentDigit = tempNum % 10;// powering according to the positions and adding to sumOfDigitssumOfDigits =(int)(sumOfDigits + Math.pow(currentDigit, numberOfDigits--));tempNum = tempNum/10;}// If sum is same as number, then number isreturn(sumOfDigits == originalNumber);}}
Вывод программы.
134 is disarium number false135 is disarium number true136 is disarium number false