![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
cooler |
![]()
Сообщение
#1
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Здравствуйте.
Нужны примеры реализации Одноканальной Системы Массового Обслуживания (СМО) с ожиданием с использованием типа данных - очередь. Сам алгоритм не нужен, именно примеры (можно на паскале ![]() Может кто-нибудь встречал? Сообщение отредактировано: cooler - 27.09.2008 17:28 |
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#3
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Похоже, я посмотрю, поразбираюсь Спасибо Если это то, скорее всего нужны будут пояснения, т.к с очередью не работал ещё |
cooler |
![]()
Сообщение
#4
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
А никому не кажется, что слишком мудрено сделано, ведь можно реализовать гораздо проще.
Или я ошибаюсь? По крайней мере я в голове представляю себе это проще ![]() Вобще зачем там сделано через мат. ожидание и дисперсию? На выходе что теоретически должно быть, наверное, мат. ожидания достаточно? |
мисс_граффити |
![]()
Сообщение
#5
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Там сделано не ЧЕРЕЗ матожидание и дисперсию.
Они просто подсчитываются. Статистика... Вообще это выдранный кусок из достаточно большого проекта. Возможно - если не решать те задачи, которые были мне нужны - можно сделать и проще. Почти наверняка. Там событийная модель... Т.е. есть событие "приход заявки", "начало обработки" и т.п. Можно подойти к этому иначе... Сделать непрерывное время - скажем, в цикле - в каждый момент которого с определенной вероятностью возникнет заявка. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#6
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
мисс_граффити,
нужно как раз событийное моделирование Алгоритм такой ? Похож? Сообщение отредактировано: cooler - 6.10.2008 21:44 Прикрепленные файлы ![]() |
мисс_граффити |
![]()
Сообщение
#7
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Именно. Убери статистику (подсчет матожидания, дисперсии..) - получишь это в чистом виде.
А, у меня еще осуществляется много запусков (именно для подсчета статистики). 50 или 100... что-то такое. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#8
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
Можешь немного пояснить модуль Queue?
В простейшем, который дается здесь в faq : unit QUEUE;
INTERFACE
type
TElem = Integer;
TList = ^Telement;
TElement = record
INFO:TElem;
NEXT : TList
end;
TQueue = record
head:TList;
tail:TList;
end;
procedure QueueInit (VAR Q:TQueue);
Function QueueEmpty(Q:TQueue):boolean;
Procedure OueuePush(var q:TQueue; e:TElem);
Function QueuePop(var q:TQueue):TElem;
IMPLEMENTATION
procedure QueueInit (VAR Q:TQueue);
begin
q.head:=nil
end;
Function QueueEmpty(Q:TQueue):boolean;
begin
QueueEmpty:=(Q.HEAD=nil)
end;
Procedure OueuePush(var q:TQueue; e:TElem);
var z:Tlist;
begin
new(z);
z^.info:=E;
z^.next:=nil;
If QueueEmpty(q) then q.head:=z else q.tail^.next:=z;
q.tail:=z
end;
Function QueuePop(var q:TQueue):TElem;
var
z:TList;
begin
z:=q.head;
q.head:=z^.next;
QueuePop:=Z^.info;
dispose(z)
end;
end.
всё понятно, а в том что у тебя я запутался с first, last, next, previous Вообще мне нужно ещё сделать изменяемый интервал между заявками и вывод статистики ввиде диаграмм Сообщение отредактировано: cooler - 8.10.2008 23:20 |
мисс_граффити |
![]()
Сообщение
#9
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Цитата Вообще мне нужно ещё сделать изменяемый интервал между заявками и вывод статистики ввиде диаграмм Ну так сделай. Что значит "изменяемый интервал"? Он случайный. Распределенный по определенному закону. Цитата first, last, next, previous первый, последний, следующий, предыдущий. ну, обзови их head, tail, если тебе так проще. next - он так и остается. previous - в модуле из FAQ очередь односвязная, у меня двусвязная... -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
cooler |
![]()
Сообщение
#10
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 178 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
мисс_граффити |
![]()
Сообщение
#11
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
убрать указатель на предыдущий элемент.
возможно, после этого придется переписывать часть кода. не помню, где там что использовалось... Сообщение отредактировано: мисс_граффити - 9.10.2008 22:16 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 0:04 |