--- tags: - универ --- ## Задание. **Вариант №18. Логистика.** *Необходимо спроектировать и реализовать систему доставки грузов получателям. Система содержит информацию о складах: Название, Координаты (на плоскости), Список товаров на складе, Авто–парк. Каждый товар характеризуется: Названием, Весом (в кг). В авто–парке перечислены автомобили для доставки, каждый автомобиль характеризуется: Номером, типом (т1, т2, т3, т4, т5), Грузоподъемностью (в кг), Дальностью (максимальной дистанцией доставки). Для каждого типа транспорта задан коэффициент (в отдельном файле), по которому рассчитывается стоимость доставки (Коэффициент $\cdot$ расстояние (в км)).* *Так же в системе зарегистрированы клиенты, для каждого клиента известно: Имя клиента, Координаты, где он расположен* *Клиент входит в систему указав свое имя и запрашивает перевозку товара — Название (товара)* *Система должна:* - *Определить на каком складе находится товар* - *Какой автомобиль по грузоподъемности и по дальности подойдет для перевозки* - *Если ни один автомобиль не может довести груз по дальности, то его нужно доставить на другой склад и доставлять дальше другими автомобилями до другого склада* - *Необходимо подсчитать стоимость доставки* - *Количество запросов на доставку не ограничено* *Можно реализовать как в консоли, так и в WinForms* ## Состав 1. Титульный лист 2. Содержание/Оглавление 3. Постановка задачи 4. Выделение прецедентов как функциональных требований 1. Диаграмма прецедентов 5. Архитектура и основная идея решения объектной модели 6. Для каждого прецедента расписываем: 1. Сущности и их обязанности в рамках этого прецедента 2. Диаграмма коммуникаций (взаимодействие объектов при реализации прецедентов) 7. Описание классов 1. Диаграмма классов 8. Код/Реализация в соответствии с описанием (код печатать полностью после него интерфейс) - ❗️Запрет на использование баз данных - ❗️Запрет на использование WPF - ❗️UI использовать на базе WinForms - ❗️UI также является объектом который нужно описывать - ❗️Курсовую работу печатать и сдавать на бумаге электронный вариант не принимается ДЗ Используя код из практики. Когда существо перемещается, оно оставляет номер своего хода (т.е. реализовать поле). Релизовать стратегию перемещенния, которая заполнит поле **по спирали** и вывести его. *Можно заполнить ходом коня (дополнительно, опционально).*