Основы программирования на C++, PASCAL
Упражнения
1. Описать объект с указанием его методов:
а) телефонный звонок (номер телефона, дата разговора, продолжительность, код города и т.д.);
б) поездка (номер поезда, пункт назначения, дни следования, время прибытия, время стоянки и т.д.);
в) кинотеатр (название кинофильма, сеанс, стоимость билета, количество зрителей и т.д.).
Реализовать объявленные в объектном типе методы.
2. Дополнить объект Drob в примере 3 методами «положительная дробь» (функция логического типа), «правильная дробь» (функция логического типа), «конечная десятичная дробь» (функция логического типа), «период дроби» (существует, если соответствующая десятичная дробь не является конечной, в общем случае результат — «длинное» число); реализовать и протестировать эти методы.
3. Описать объекты-потомки для объектов из задания 1. Реализовать объявленные в объектном типе методы.
4. Реализовать методы «вычислителей» из примера 4.
5. Дополнить набор объектов из примера 5 объектом «прямоугольник», а также другими выпуклыми четырехугольниками (трапеция и т.д.), не являющимися параллелограммами, и реализовать соответствующие методы.
6. Выполнить другой вариант проектирования и реализации объектов и их методов, используя для одинаковых действий виртуальные методы.
7. Реализовать примеры 3—5, создавая объекты в динамической памяти.
8. Построить в каждом случае иерархию объектов. Последовательно применить для объектов методы отобразить, сдвинуть, изменить размеры, спрятать (задача взята на http:// petrsu.karelia.ru/Structure/Deps/IMO/pascal/theory/l.htm):
а) координаты — точка — горизонтальная линия — горизонтально-вертикальное перекрестье;
б) координаты — точка — наклонная под углом 45° линия — наклонное перекрестье;
в) координаты — точка — окружность — дуга (процедура Arc);
г) координаты — точка — эллипс (процедура FillEllipse) — эллиптическая дуга (процедура Ellipse);
д) координаты — точка — окружность — сектор (процедура PieSlice);
е) координаты — точка — сектор (процедура PieSlice) — эллиптическая дуга (процедура Ellipse);
ж) координаты — точка — прямоугольник (процедура Rectangle) — трехмерная полоса (процедура Ваr3D);
з) координаты — точка — заштрихованный эллипс (процедура FillEllipse) — заштрихованный сектор (процедура Sector);
и) координаты — точка — окружность — заштрихованный сектор (процедура Sector);
к) координаты — точка — окружность — эллиптическая дуга (процедура Ellipse).
9. Реализовать объекты и их методы из примера 1 в графическом режиме.