Интерфейс для обработки чисел: Фильтрация и Преобразование
Java
Средний
interfaces
Задача «Интерфейс для обработки чисел: Фильтрация и Преобразование»
Реализуйте интерфейсы NumberFilter и NumberTransformer с единственным методом boolean filter(int number) и int transform(int number) соответственно. Создайте классы EvenFilter (оставляет четные числа), OddFilter (оставляет нечетные), SquareTransformer (возвращает квадрат числа), IncrementTransformer (увеличивает на 1). В main считайте число n, затем n целых чисел. Примените к каждому числу фильтр и преобразование: если фильтр возвращает true, выведите результат преобразования, иначе выведите само число. Используйте полиморфизм через интерфейсы.
Формат ввода
Первая строка: целое число n (1 ≤ n ≤ 100). Вторая строка: n целых чисел, разделенных пробелами, каждое от -1000 до 1000.
Формат вывода
Выведите n чисел (через пробел) — результат обработки каждого числа согласно правилу: если число четное, вывести его квадрат; если нечетное, вывести число, увеличенное на 1.
Примеры
Пример 1
ВВОД
3
-2 -1 0
ВЫВОД
4 0 0
Пример 2
ВВОД
5
1 2 3 4 5
ВЫВОД
2 4 4 16 6
main.java