задача на заказ, удалённо

Поиск временных и постоянных исполнителей.

Модератор: Yurich

Ответить
Ferre
Сообщения: 1
Зарегистрирован: 09 дек 2007, 20:46

12 Телефонный сервис
Разработать приложение, позволяющее организовать работу по учёту телефонных услуг. Або¬нентам-клиентам предоставляются следующие услуги: телефон, факс и сеть (INTERNET). Информа¬ция о некотором телефонном абоненте хранится в его описателе. Описатель абонента содержит: ука¬затель на описатель клиента, количество сеансов связи и указатель на динамический массив описате¬лей услуг,. Клиентами могут быть - «физические лица» и «юридические лица».
Описатель клиента «физическое лицо» - фамилия и инициалы, почтовый адрес, номер банков¬ского счёта.
Описатель клиента «юридическое лиио» - название организации, фамилия и инициалы ответст¬венного лица, почтовый адрес, номер банковского счёта.
Описатель телефона - «номер» партнёра, дата и время связи, продолжительность связи (в ми¬нутах).
Описатель факса - «номер» партнёра, дата и время связи, продолжительность связи (в мину¬тах), объём информации (в MB).
Описатель сети - «номер» партнёра, дата и время связи, продолжительность связи (в минутах), объём выходного и входного трафика (в MB).
Каждый абонент телефонного сервиса имеет уникальную характеристику - «номер» абонента. Информация обо всех абонентах телефонного сервиса сведена в таблицу, каждый элемент которой состоит из «номера» абонента и указателя на описатель абонента Все элементы таблицы упорядоче¬ны по возрастанию «номеров».
Полная информация о телефонном сервисе хранится в описателе сервиса, который содержит: название сервиса, месячную плату для бюджетного абонента, тариф оплаты минуты связи, тариф оплаты передачи одного MB и таблицу абонентов.
Обеспечить выполнение следующих операций:
♦ Для описателя сервиса:
> получить (вернуть в качестве результата) месячную плату; получить тариф минуты связи, получить тариф передачи одного MB;
> включить элемент в таблицу по «номеру»;
> найти элемент в таблице по «номеру»;
> показать содержимое таблицы.
♦ Для любого абонента:
> получить (вернуть в качестве результата) тип клиента;
> получить время (продолжительность) оказания услуги; изменить время;
> получить объём переданной информации; изменить объём информации;
> дополнить информацию об оказанных услугах.
♦ Для приложения:
> оформить нового клиентателефонного сервиса; ■,
> модифицировать информацию об оказанных услугах для указанного абонента в соответст¬вии с её типом;
> рассчитать общий объём переданной информации для указанного абонента;
> рассчитать общее время пользования телефонным сервисом по его типу;
> (*) определить стоимость оказанных услуг для всех абонентов, используя класс-итератор.
Порядок выполнения работы
1. На основе описания задачи определить состав классов.
2. Разработать иерархию классов и схему их взаимодействия.
3. Для каждого класса определить его состояние и необходимые методы.
4. Разработать и отладить все классы. Приложение реализовать в виде простой диалоговой про¬граммы.
5. (*) Разработать и отладить класс, реализующий работу приложения. Предусмотреть в классе возможность сохранения таблицы в файле и ее восстановления.
6. (*) Разработать и отладить класс-итератор, с помощью которого реализовать дополнительные операции.
Примечание: пункты задания, отмеченные (*), являются дополнительными.
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Перемещено из раздела С/С++.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Ответить