|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.05.2015, 13:03 | #1 |
Пользователь
Регистрация: 16.02.2015
Сообщений: 25
|
создание цикла или условия - СМО, две кассы. Реализация с помощью StringGrid
Здравствуйте помогите пожалуйста у меня задача вывести в стрингрид информацию по покупателям и как создать условие что у меня имеется 2 кассы я ввожу время время поступления покупателей и программа должна будет сортировать от времени покупателей по 2ум кассам если первая касса занята то он отправляет во вторую и так далее все выводить в таблицу помогите разобраться с условием не знаю как правильно записать его.
|
27.05.2015, 13:10 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А каков критерий "занятости" кассы?
И если обе кассы расчитанны на одинаковые услуги, почему бы не сделать распределение поровну?
I'm learning to live...
|
27.05.2015, 13:22 | #3 |
Пользователь
Регистрация: 16.02.2015
Сообщений: 25
|
там на каждую кассу идет свое время обслуживания на каждого покупателя и время прихода и от этих значений нельзя сделать по ровну так как якобы если первая касса свободна то зачем покупатель пойдет во вторую кассу или же если она занята то ему придеть ожидать когда другая касса свободна и с клавиатуры вводятся значения занятости кассы поэтому по порядку будет уже не правильное выполнение условия задачи
|
27.05.2015, 13:37 | #4 |
Старожил
Регистрация: 23.10.2010
Сообщений: 2,309
|
Создать две очереди.
Поступил первый клиент. Первого клиента в кассу, у которой более быстрое обслуживание. Если, например, это первая касса, то туда. Поступил следующий клиент. Считаем время на обслуживание клиентов уже находящихся в очереди. Считаем время оставшееся на обслуживание уже обслуживаемых клиентов. Вновь поступившего включаем в очередь, в которой он будет меньше стоять. Добавить опционально: Проверяем время работы кассы и если очередь на обслуживание превысила время наступления перерыва, то поступление в очередь закрыть. Как-то так, ...
Как-то так, ...
|
27.05.2015, 13:43 | #5 | |
Пользователь
Регистрация: 16.02.2015
Сообщений: 25
|
Цитата:
|
|
27.05.2015, 14:08 | #6 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,526
|
Касса[1] Касса[2] .....
1)Считать Время прихода 2)проверить ВСЕ кассы на возможность обслуживания =0 (касса будет свободна) (время ОКОНЧАНИЯ последнего обслуживания <время прихода) =1 (время окончания ПРЕДпоследнего обслуживания<время прихода) =2 (время окончания ПРЕД-ПРЕД-предпоследнего обслуживания <время прихода) Цитата:
ProvTime(Касса[x], testtime) (смотри пункт 2.) =0 отлично (можно сразу начать обслуживание) =1 нормально (придется подождать, но недолго) =2 очень плохо (в очереди уже есть двое и клиент будет третьим) 4) "записать" клиента в выбранную кассу 5) если есть клиенты перейти к п.1 иначе закончить.
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 27.05.2015 в 14:15. |
|
27.05.2015, 14:15 | #7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Очередь в кассу не может набираться систематически или регулироваться по времени одной услуги. Можно высчитать вероятность длительности на определенную услугу по статистике уже принятых услуг, но заранее знать сколько времени на это отведено будет не дано никому. Поэтому может тебе стоит подробнее раскрыть задачу. Что-то тут не сростается...
I'm learning to live...
|
|
27.05.2015, 14:42 | #8 | |
Пользователь
Регистрация: 16.02.2015
Сообщений: 25
|
Цитата:
Код:
Последний раз редактировалось Stilet; 27.05.2015 в 15:42. |
|
27.05.2015, 15:50 | #9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Я бы на твоем месте сделал следующее: 1) Завел бы справочник, в котором указал список услуг касс и их планируемое время выполнения в нормальных условиях + допуск 2) Каждый клиент, который попадает в очередь приходит со случайной услугой (допустим ее номер генерируется рандомно). 3) Очередь пополняется тоже рандомно по времени и кол-ву клиентов. т.е. к примеру таймер с рандомным интервалом, а по его срабатыванию в очередь попадает рандомное кол-во клиентов с рандомным списком услуг 4) Когда клиент попадает на вершину очереди ему на каждую услугу задается тоже рандомно допуск к нормативному времени услуги в рамках допуска из справочника. Ну и два потока - один эмулирует первую очередь с ожиданием. которое задано клиенту на вершине, второй - вторую. Вот это будет действительно красивый диплом, и более того я не зря дал выше ссылку. Плановики и аналитики именно так расчитывают загруженность одного рабочего места оператора ) Уж поверь, я с этим уж 4 года работаю.
I'm learning to live...
|
|
27.05.2015, 22:52 | #10 | |
Пользователь
Регистрация: 16.02.2015
Сообщений: 25
|
Цитата:
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Реализация условия | Parallelogram | PHP | 3 | 11.08.2014 20:06 |
Реализация сложного условия sql | atenon | SQL, базы данных | 2 | 05.08.2012 20:20 |
Работа с циклами в Delphi 7. Выйти из цикла достигнув указанного условия. | CONDOR* | Помощь студентам | 1 | 16.05.2012 18:59 |
связать две программки в одну с использованием условия. | 13xXx13 | Помощь студентам | 1 | 15.12.2010 16:51 |
Си. Две задачи на опер. цикла и условия. | Albi | Помощь студентам | 6 | 10.10.2010 14:22 |