Структуры и классы
Во всех заданиях помимо
указанных в заданиях операций, обязательно должны присутствовать:
·
Метод
инициализации Init(); метод должен контролировать значения аргументов на
корректность, при некорректных значения выводить сообщение No
и заканчивать работу с этим экземпляром;
·
Ввод с клавиатуры
Read();
·
Вывод на экран Display(), в котором выводятся поля экземпляра и результат
вычислений специфического метода;
В головной функции требуется
задать параметры окна, затем создать один статический экземпляр описанного типа
и для него выполнить все указанные в списке методы. Список строится по шаблону:
<код операции> <параметр
операции>
Условно приняты следующие
коды операций:
1 – перемещение курсора по
горизонтали;
2 – перемещение курсора по
вертикали;
3 – изменение размера
курсора;
4 – изменение вида курсора;
5 – изменение видимости
курсора.
При отсутствии параметров
операции задавать фиктивный параметр=0.
После каждой операции
выдавать на экран текущие параметры курсора по шаблону:
<горизонтальная координата
курсора> <вертикальная координата курсора> <размер курсора>
<вид курсора><видимость курсора>

Формат входных данных.
Ввод: пара
значений параметров окна, затем параметры статического объекта, после этого
список операций над курсором с параметрами, 0 – признак окончания списка.
Вывод:
первоначальные параметры курсора, затем после выполнения каждой операции
текущие параметры курсора.
Пример входных данных:
640 400
20 30 40 1 1
3 20
1 500
2 300
5 0
2 -20
2 460
3 148
4 0
0 0
Пример выходных данных:
20 30 40 1 1
20 30 20 1 1
520 30 20 1 1
520 330 20 1 1
520 330 20 1 0
520 310 20 1 0
520 310 20 1 0
520 310 148 1 0
520 310 148 0 0