Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
задание_лабы_иус_cpp_2сем.doc
Скачиваний:
15
Добавлен:
16.04.2015
Размер:
252.42 Кб
Скачать

Int xLeft, yTop, xRight, yBottom;

int xTitle, yTitle;

COLORS colorBk, colorTitle, colorLabel;

int nAllBtn, nChkBtn;

BOOL lShow;

BUTTON *aButton;

char *Title;

void Refresh(void);

//******************Интерфейс***************************

public:

RadioButton(int x, int y, int nAllButton, char *Label[], char *Title);

~RadioButton(void);

void Show(void);

BOOL CheckClick(int x, int y);

int RetCheckButton(void);

};

****************************************************************************

1

class Message.

Окно с сообщением (различные варианты оформления: ни pамки, ни тени, одинаpная pамка , одинаpная pамка с тенью, двойная pамка, двойная pамка с тенью).

2

class Button.

Именованная кнопка с привязкой функции (различные варианты оформления: ни pамки - ни тени, одинаpная pамка , одинаpная pамка с тенью, двойная pамка, двойная pамка с тенью).

3

class DialogButton.

Именованное диалоговое окно с наличием 2-ух кнопок, определяющих разветвление процесса. Кнопки имеют названия, например: Да, Нет. Названия определяются через параметры конструктора.

№ 4

class RadioButton.

Именованная визуальная компонента. Смотри преамбулу к заданию.

5

class CheckListBox.

Именованная визуальная компонента

6

class DateField.

Именованная визуальная компонента для ввода даты (с контролем правильности ввода). Должна быть обеспечена возможность корректировки с помощью клавиш: Left, Right, Del, BackSpace, Homt, End)/

7

class FloatField.

Именованная визуальная компонента для ввода вещественного (с контролем правильности ввода). Должна быть обеспечена возможность корректировки с помощью клавиш: Left, Right, Del, BackSpace, Homt, End)/

8

class TemplateField.

Именованная визуальная компонента для ввода по шаблону:

A - буквенный символ,

N - буквенный или цифровой символ,

X - любой символ,

9 - цифровой символ,

9

class StringField.

Именованная визуальная компонента для ввода строки со скроллингом.

10

class ChoiceBySpace.

Именованная визуальная компонента для выбора строки из массива с помощью пробела.

11

class ListBox.

Именованная визуальная компонента для выбора из выпадающего списка с помощью курсора или клавиш Left, Right или Enter.

№ 12

class HorisMenu.

Горизонтальное меню с выбором с помощью клавиш Left, Right, Enter.

13

class HorisMenu.

Горизонтальное меню с выбором с помощью курсора.

14

class VertMenu.

Вертикальное меню с выбором с помощью клавиш Left, Right, Enter)

15

class VertMenu.

Вертикальное меню с выбором с помощью курсора.

16

Class Diagram.

Именованная визуальная компонента для рисования столбчатых диаграмм с возможной детализацией.

17

class HorisProgressBar.

Горизонтальный прогресс бар.

18

class VertProgressBar.

Вертикальный прогресс бар.

19

class Play9.

Игра 9. Управление клавишами Left, Right, Up, Down.

20

class HorisTrackBar.

Горизонтальный трек бар.

21

class VertTrackBar.

Вертикальный трек бар.

22

class HorisProgressBar.

Горизонтальный прогресс бар «бегущая волна».

23

class VertProgressBar.

Вертикальный прогресс бар «бегущая волна».

24

class RunString.

Визуальная компонента «бегущая строка».

25

class Time.

Визуальная компонента «часы». Должна быть обеспечена возможность обновления показаний.

26

class Window.

Именованная визуальная компонента окна с различными вариантами оформления: ни pамки - ни тени, одинаpная pамка , одинаpная pамка с тенью, двойная pамка, двойная pамка с тенью.

27

class TextWindow.

Именованная визуальная компонента окна для вывода текста. Должен быть обеспечен корректный перенос строки (по пробелу).

28

class GrapicDiagram

Именованная визуальная компонента окна для вывода графика (во весь экран, с названием, с оцифрованными осями).

29

class UpDown.

Именованная визуальная компонента для ввода числового значения с помощью визуальных кнопок < , > и клавиши Enter.

30

class Table

Именованная визуальная компонента для вывода таблицы.

Задание N 7

Создать следующие классы. В каждом классе должны быть наборы

конструкторов (в том числе по умолчанию и копирования), деструктор.

Пример разработки подобного класса приведен в приложении 08.

1

Класс "Товар".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать: название товара, название модели,

название фирмы-изготовителя, цена, количество, произвольное количество

характеристик (примечаний).

Должен быть написан метод(ы) корректировки.

2

Класс "Книга".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

автор, название, год издания, число страниц, тематика, произвольное количество ключевых слов.

Должен быть написан метод(ы) корректировки.

3

Класс "Поезд".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

Номер, тип поезда, время отправления, время в пути, перечень остановок (любой длины).

Должен быть написан метод(ы) корректировки.

4

Класс "Оборудование".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название подразделения, инвентарный номер, название оборудования, год производства, первоначальная стоимость, процент амортизации за год, текущая стоимость, произвольное число примечаний.

Должен быть написан метод(ы) корректировки.

5

Класс "Обменный пункт (ОП)".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название банка, номер, адрес, перечень валют с указанием курсов покупки-продажи произвольной длины.

Должен быть написан метод(ы) корректировки.

6

Класс "Студент".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО студента, номер группы, произвольное количество данных о пропусках занятий (номер недели, количество пропущенных часов, количество оправданных часов).

Должен быть написан метод(ы) корректировки.

7

Класс "Студент".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО студента, номер группы, дата рождения, адрес, перечень результатов

сдач экзаменов произвольной длины (номер семестра, название дисциплины, оценка).

Должен быть написан метод(ы) корректировки.

8

Класс "Учебная дисциплина".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название дисциплина, номер семестра, тип занятий, часы, вид контроля, список преподавателей (которые могут вести данный вид занятий) .

Должен быть написан метод(ы) корректировки.

9

Класс "Преподаватель".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО преподавателя, должность, звание, стаж, зарплата, список нагрузки (семестр, название дисциплины, тип занятий, часы).

Должен быть написан метод(ы) корректировки.

10

Класс "Мастерская".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название, район, адрес, телефон, список возможных услуг.

Должен быть написан метод(ы) корректировки.

11

Класс "Автомобиль".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

регистрационный номер, марка, год производства, ФИО шофера, дата очередного ТО, история неисправностей.

Должен быть написан метод(ы) корректировки.

12

Класс "Автомобиль".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

регистрационный номер, марка, год производства, ФИО владельца, штрафная история произвольной длины.

Должен быть написан метод(ы) корректировки (исправление сведений,

добавление штрафа, стирание штрафа).

13

Класс "Недвихимость".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

тип дома, район, адрес, количество комнат, стоимость, ФИО владельца, перечень примечаний произвольной длины.

Должен быть написан метод(ы) корректировки.

14

Класс "Футбольный матч".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название первой команды, название второй команды, дата, количество забитых мячей первой командой, количество забитых мячей второй командой,

перечень штрафов первой команды, перечень штрафов второй команды.

15

Класс "Сотрудник".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО, год рождения, название подразделения, зарплата, должностная история

произвольной длины.

Должен быть написан метод(ы) корректировки.

16

Класс "Клиент Петроэлектросбыта".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО клиента, адрес, список платежей (дата оплаты, показания счетчика, сумма).

Должен быть написан метод корректировки.

17

Класс "Детская игрушка".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название игрушки, цена, наименьший возраст, наибольший возраст, список

магазинов (район, адрес).

Должен быть написан метод(ы) корректировки.

18

Класс "Собака".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

кличка, порода, дата рождения, ФИО хозяина, список дипломов (зверь, степень диплома, когда, где).

Должен быть написан метод(ы) корректировки.

19

Класс "Рекламное объявление".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

номер рубрики (название рубрики), текст, количество необходимых публикаций,

количество сделанных публикаций, перечень дат сделанных публикаций.

Должен быть написан метод(ы) корректировки.

20

Класс "Болезнь".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название болезни, перечень возрастов (молодой, средний, пожилой), перечень

симптомов (температура, кашель, головная боль, тошнота ...).

Должен быть написан метод корректировки.

21

Класс "Блюдо".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название блюда, номер (первое, второе, третье), калорийность, перечень продуктов (мясо, лук, ...)

Должен быть написан метод корректировки.

22

Класс "Товар для доставки".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название товара, вес, количество единиц объема, дата, район, адрес, отметка о доставке.

Должен быть написан метод(ы) корректировки.

23

Класс "Сотрудник-отпуск".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

ФИО, название подразделения, должность, список отпусков (дата начала, дата окончания) произвольной длины.

Должен быть написан метод(ы) корректировки.

24

Класс "Запись в записной книжке".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название, дата, время, содержание, признак выполнения.

Должен быть написан метод(ы) корректировки.

25

Класс "Трудовая вакансия".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

профессия, квалификация, зарплата, мин. возраст, макс. возраст, адрес, телефон, перечень доп. требований произвольной длины.

Должен быть написан метод(ы) корректировки.

26

Класс "Улица".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название улицы, район, список номеров трамваев, список номеров троллейбусов, список номеров автобусов.

Должен быть написан метод(ы) корректировки.

27

Класс "Лекарство".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название лекарства, список болезней, список аптек (номер, район, улица, номер дома, телефон).

Должен быть написан метод(ы) корректировки.

28

Класс "Телефон".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

номер телефона, ФИО, адрес, список примечаний.

Должен быть написан метод(ы) корректировки.

29

Класс "Театр".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

название театра, район, адрес, список спектаклей (жанр, название, дата).

Должен быть написан метод(ы) корректировки.

30

Класс "Загородный дом".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

район, нас. пункт, тип строения, площадь дома, площадь участка, цена.

Должен быть написан метод(ы) корректировки.

31

Класс "Маршрут".

Должны быть перегружены операции: =, ==, !=, <<.

Объект данного класса должны содержать:

Тип транспортного средства, номер, интервал следования в зависимости от времени суток, перечень улиц.

Должен быть написан метод(ы) корректировки.

Задание N 8

Написать шаблоны классов на основе классов Vector или List из приложения 10.

Каждый класс должен содержать следующие методы:

- набор конструкторов (в том числе и конструктор копирования);

- деструктор.

- iterator begin(void);

- iterator end(void);

- void clear(void);

- bool empty(void);

- size_type size(void); //количество элементов

Во всех контейнерах для итераторов реализованы операции:

=, ==, !=, *, ++(префиксная и постфиксная)

Кроме того каждый класс должен содержать свой специфический набор

методов.

Рзработанный класс использовать при решении 9 задания.

1

class Vector

На основе динамического массива.

Дополнительный набор методов: