Структуры и классы
Тип данных должен быть
реализован в виде класса с указанными закрытыми полями, где операции
реализуются в виде открытых методов класса. Требуется реализовать тип данных с
помощью класса. Во всех заданиях обязательно должны присутствовать:
·
Метод
инициализации Init(); метод должен контролировать значения аргументов на
корректность, при некорректных значения выводить
сообщение No и заканчивать
работу с этим экземпляром;
·
Ввод с клавиатуры
Read();
·
Вывод на экран Display(), в
котором выводятся поля экземпляра и результат вычислений специфического метода;
В головной функции требуется
создать один статический экземпляр описанного типа и вызвать для него все
перечисленные методы в указанном порядке.


Формат входных данных.
Ввод: в первой строке – размеры экрана по горизонтали и
вертикали, затем первоначальные параметры окна по шаблону:
Заголовок,
координаты левого верхнего угла, размер по горизонтали, размер по вертикали,
цвет окна, состояние «видимое(1)/невидимое(0)», состояние «с рамкой (1)/без
рамки(0)». После этого построчно
вводятся операции, производимые над окном по шаблону:
<код операции>
<параметры>
Где код операции = 0 –
признак окончания ввода. После выполнения каждой операции выводить все
параметры окна. При невозможности выполнения операции параметры окна не
изменять.
Коды операций:
1 – передвижение окна по
горизонтали;
2 – передвижение окна по
вертикали;
3 – изменение ширины окна;
4 – изменение высоты окна;
5 – изменение цвета окна;
6 – изменение состояния
видимости;
7 – изменение состояния
рамки.
Вывод: Первоначальные
параметры окна, затем параметры окна после выполнения каждой операции.
Пример входных данных:
640 400
window 50 50 300 100 5 1 1
1 200
2 200
3 100
4 200
5 6
6 0
7 0
0 0
Пример выходных данных:
window 50
50 300 100 5 1 1
window
250 50 300 100 5 1 1
window 250 250 300 100 5 1 1
window 250 250 100 100 5 1 1
window 250 250 100 100 5 1 1
window 250 250 100 100 6 1 1
window 250 250 100 100 6 0 1
window 250 250 100 100 6 0 0