Для того чтобы определить, является ли число монотонным, нужно проверить, что все его цифры расположены в порядке возрастания или убывания.
В Java можно реализовать такую проверку следующим способом:
- Преобразовать число в строку с помощью метода
Integer.toString()
. - Создать массив символов из строки с помощью метода
toCharArray()
. - Итерироваться по массиву и проверять, что каждая цифра больше или равна предыдущей (если число возрастающее) или меньше или равна предыдущей (если число убывающее).
- Если условие не выполняется для хотя бы одной пары цифр, то число не является монотонным.
Вот пример реализации этой проверки:
public class MonotonicNumberChecker { public static boolean isMonotonic(int number) { // Преобразование числа в строку String numberString = Integer.toString(number); // Создание массива символов char[] digits = numberString.toCharArray(); // Проверка, является ли число возрастающим boolean isIncreasing = true; for (int i = 1; i < digits.length; i++) { if (digits[i] < digits[i - 1]) { isIncreasing = false; break; } } // Проверка, является ли число убывающим boolean isDecreasing = true; for (int i = 1; i < digits.length; i++) { if (digits[i] > digits[i - 1]) { isDecreasing = false; break; } } // Возвращение результата return isIncreasing || isDecreasing; } public static void main(String[] args) { // Примеры использования int number1 = 12345; // монотонное число (возрастающее) int number2 = 54321; // монотонное число (убывающее) int number3 = 12354; // не монотонное число System.out.println(number1 + " - монотонное: " + isMonotonic(number1)); System.out.println(number2 + " - монотонное: " + isMonotonic(number2)); System.out.println(number3 + " - монотонное: " + isMonotonic(number3)); } }
В этом примере метод isMonotonic()
проверяет, является ли число монотонным, и возвращает true
или false
в зависимости от результата. В методе main()
приведены примеры использования этой функции.