Написать программу, моделирующую кассы в магазине

Рейтинг: 0Ответов: 1Опубликовано: 25.12.2014

Доброго времени суток, Уважаемые Знатоки.

Сразу оговорюсь, помощь нужна не в решении задачи вместо меня. Просто не могу понять, как применить имеющиеся знания на практике. Если кто-нибудь поможет составить план действий, буду очень сильно благодарен.

Итак, вот сама задача:

Напишите программу, моделирующую кассы в магазине. Существует несколько касс, работающих одновременно. Каждый покупатель — отдельный поток. Общее количество покупателей может быть больше, чем количество касс, но одновременно не может обрабатываться больше покупателей, чем имеется рабочих касс. У каждого покупателя есть набор товаров, которые должны быть выведены в процессе обслуживания.

Ответы

▲ 1

Ну да, как в комментарии написано примерно. Полагаю, что идея в том, что в каждом потоке должна быть очередь (т.е. очередь к каждой кассе), а также общий пул людей в магазине. И нужно равномерно заполнять эту очередь. Например, сделаем какую-то общую переменную - люди в магазине, и будем её увеличивать через какие-то промежутки времени (люди приходят в магазин). В то же время будем её уменьшать, когда человек закончил покупки и идет на кассу, кассу выбираем, исходя из размера очереди, где меньше - туда и идем.