- •Вариант 1 Линия метро
- •Порядок выполнения работы
- •Вариант 2 Гостиница
- •Порядок выполнения работы
- •Вариант 3 Программа на ассемблере
- •Порядок выполнения работы
- •Вариант 4 Студенты института
- •Порядок выполнения работы
- •Вариант 5 Книжный каталог
- •Порядок выполнения работы
- •Вариант 6 Таблица идентификаторов
- •Порядок выполнения работы
- •Вариант 7 Учебные группы
- •Порядок выполнения работы
- •Вариант 8 Информационные агентства
- •Порядок выполнения работы
- •Вариант 9 Учебный план
- •Порядок выполнения работы
- •Вариант 10 Спортивная команда
- •Порядок выполнения работы
- •Вариант 11 Файловая система
- •Порядок выполнения работы
- •Вариант 12 Телефонный сервис
- •Порядок выполнения работы
- •Вариант 13 Торговый склад
- •Порядок выполнения работы
- •Вариант 14 Жилищный фонд
- •Порядок выполнения работы
- •Вариант 15 Туристическое бюро
- •Порядок выполнения работы
- •Вариант 16 Банковские операции
- •Порядок выполнения работы
- •Вариант 17 Отдел кадров
- •Порядок выполнения работы
- •Вариант 18 Жилищная контора
- •Порядок выполнения работы
- •Вариант 19 Налоговая служба
- •Порядок выполнения работы
- •Вариант 20 Сетевой сервер
- •Порядок выполнения работы
- •Вариант 21 Семестровый контроль
- •Порядок выполнения работы
- •Вариант 22 Сетевой сервис
- •Порядок выполнения работы
Вариант 22 Сетевой сервис
Разработать приложение, позволяющее организовать работу по учёту передачи информации в сети: почта, файл или гипертекст. Все серверы в сети имеют сетевой адрес (IP-адрес, например, 194.67.66.175) и сетевое имя (www.mephi.ru). Информация о предоставляемом сервисе хранится в специальном описателе.
Описатель почты – признак «приём или передача»; сетевой адрес отправителя или получателя; дата и время связи; объём информации (в МВ).
Описатель файла – признак «приём или передача»; сетевой адрес отправителя или получателя; дата и время связи, продолжительность связи (в минутах), объём информации (в МВ).
Описатель сети - сетевой адрес отправителя, дата и время связи, продолжительность связи (в минутах), объём выходного и входного трафика (в МВ).
Информация обо всём сетевом сервисе сведена в просматриваемую таблицу – «таблицу связи», каждый элемент которой содержит сетевой адрес абонента и указатель на описатель сервиса. Абонент может выступать как получателем, так и отправителем информации.
Полная информация о сетевом сервисе хранится в описателе сервера, который содержит: собственный сетевой адрес и сетевое имя сервиса, тариф оплаты минуты связи, тариф оплаты передачи одного МВ и «таблицу связи».
Обеспечить выполнение следующих операций:
-
Для описателя сервера:
-
получить (вернуть в качестве результата) собственный сетевой адрес; получить тариф минуты связи; получить тариф передачи одного МВ;
-
включить элемент в таблицу по сетевому адресу абонента;
-
найти элемент в таблице по сетевому адресу абонента и времени услуги (дата и время сеанса связи);
-
показать содержимое таблицы.
-
-
Для любого сетевого сервиса:
-
получить (вернуть в качестве результата) тип сервиса;
-
получить тип связи («приём» или «передача»);
-
получить время (дату и время связи) оказанной услуги;
-
получить сетевой адрес отправителя или получателя;
-
получить время связи; получить объём информации;
-
рассчитать стоимость сервиса (сумма платы по объёму информации и по времени связи).
-
-
Для приложения:
-
записать информацию об оказанных услугах для указанного абонента;
-
вывести информацию об оказанных услугах для указанного абонента (суммарный объём и время связи по каждому типу сервиса);
-
рассчитать стоимость оказанных услуг всех видов сервиса для указанного абонента;
-
(*) рассчитать баланс принятой и отправленной информации для всех абонентов сети, используя класс-итератор.
-
Порядок выполнения работы
-
На основе описания задачи определить состав классов.
-
Разработать иерархию классов и схему их взаимодействия.
-
Для каждого класса определить его состояние и необходимые методы.
-
Разработать и отладить все классы. Приложение реализовать в виде простой диалоговой программы.
-
(*) Разработать и отладить класс, реализующий работу приложения. Предусмотреть в классе возможность сохранения таблицы в файле и ее восстановления.
-
(*) Разработать и отладить класс-итератор, с помощью которого реализовать дополнительные операции.
Примечание: пункты задания, отмеченные (*), являются дополнительными.