RatiboR1978
@RatiboR1978

Как решить задачу Планировщик машин?

День добрый! Зашел в тупик с задачей. Вот условие:
Для нашего отдела логиcтики потребовалось реализовать функционал, который бы показывал какой заказ в какую машину грузить.
Реализовать простой класс TruckPlanner, который бы позволял в простом виде получить распределение заказов по машинам. На данном этапе не требуется решать задачу оптимального распределения заказов с целью сокращения количества машин.
Описание класса
Класс TruckPlanner должен принимать в конструктор следующие аргументы:
1. weigthLimit — лимит по весу для всех машин, число.
Методы
У экземпляра класса TruckPlanner должнен быть доступен один метод:
• add — добавляет заказ в планировщик, принимает в качестве аргумента заказ Order.
Мета-программирование
У экземпляра класса TruckPlanner должен быть реализован итератор который возвращает машины Truck с распределенными по ним заказами Order.
Для реализации итератора должен обязательно быть использован генератор. Уточним еще раз, что заказы нужно распределить по машинам просто последовательно, с учетом лимита, оптимизировать распределение не требуется.
Класс Order
Принимает в конструктор два аргумента:
1. id — идентификатор, число;
2. weight — вес заказа, число.
Класс Truck
Принимает в конструктор два аргумента:
1. number — порядковый номер машины, число;
2. weightLimit — лимит по весу, число.
Имеет следующие свойства и методы:
• свойство totalWeigth — общий вес заказов, число, только для чтения.
• метод add — помещает заказ в машину, принимает заказ Order в качестве аргумента. Вернет истину, если заказ влезает в машину, иначе вернет ложь.
• метод isFit — проверит, поместится ли заказ в машину, принимает заказ Order в качестве аргумента. Вернет истину, если заказ влезает в машину, иначе вернет ложь.

а вот мой код до чего я дорешался https://codepen.io/RatiboR1978/pen/bMBbog?editors=1011# у меня получается создается машина и туда загружаются только те заказы которые в нее влазят из всего перечня. Как создать вторую машину, и как остановить загрузку первой когда начинают не влазить заказы, не могу сообразить.
  • Вопрос задан
  • 142 просмотра
Решения вопроса 1
RatiboR1978
@RatiboR1978 Автор вопроса
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@m_pchelnikov
Смотрите на CodePen
Ответ на ваш вопрос в методе add класса TruckPlanner
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы