Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/15: Рейтинг темы: голосов - 15, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 05.05.2012
Сообщений: 18
1

Многоканальная система массового обслуживания

13.01.2013, 11:31. Показов 2988. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет.
Нужно составить любую задачу на тему многоканальная система массового обслуживания, что я и сделал на паскале.
Нужно этот код который я написал на паскале переписать на delphi (From), с объяснениями пожалуйста, буду очень признателен
Вот код Паскаля который я сделал и написал что какая функция выполняет, чтоб вам полегче было.
Результат вычисления ниже =)
Думаю это для вас раз плюнуть.
Заранее спасибо!!!
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
Program lol;
uses crt;
var l,n,k:integer;
out:text;
a,b,c,e,w,p,j,o,q,v,z,x,d,t:real;
function f(k:real):real;
begin if (k=0) or (k=1)
then f:=1
else f:=f(k-1)*k;
end;
Function stepen(A, B: Real): Real;
{Возведение А в степень В}
begin
if A > 0 then
stepen:= Exp(B*Ln(A)) else if A<0 then
stepen:= Exp(B*Ln(Abs(A))) else if B=0 then
stepen:= 1 else
stepen:= 0;
end;
begin
clrscr;
{Создадим и откроем файл}
assign(out,'Shahbanov.txt'); rewrite(out);
write(out, '| n | c | e | w | P | b | o | v ');
write(out,'| Q | A | K | Z | X |');
{Введем входящие данные}
writeln('Число каналов');
read(n);
writeln('Ввод входящего потока');
read(c);
writeln('Ввод обслуживания');
read(e);
writeln('Ввод потоков выходов');
read(w);
{Идет расчет}
{Коэффициент нагрузки системы}
p:=c/e;
{Приведенный поток уходов}
b:=w/e;
{Вероятность того что все каналы свободны}
t:=stepen(p,n) / f(n);
o:=stepen(t,-1);
{Вероятность в отказе обслуживания}
v:=o+stepen(p,n)/f(n);
{Относительная пропускная способность}
q:=1-0;
{Абсолютная пропускная способность}
a:=c*q;
{Среднее число заявок в очереди}
j:=c/e;
x:=(c-j)/w;
{Среднее число занятых потоков}
z:=p-b;
{Выходные данные в файл}
writeln(out,'');
write(out,n,c:8:0,e:8:0,w:8:0,p:8:3,b:8:3);
write(out,o:8:3,v:8:3,q:8:3,a:8:3,j:8:3);
write(out,z:8:3,x:8:3);
{Закрытие файла}
close(out);
end.
Результат вычислений

n с e w P b o v Q A K Z X
2 12 6 3 2 0.5 0.5 2.5 1 12 2 1.5 3.333

n c e w P b o v Q A K Z X
3 12 6 3 2 0.5 0.75 2.083 1 12 2 1.5 3.333

n c e w P b o v Q A K Z X
2 12 6 4 2 0.667 0.75 2.083 1 12 2 1.333 2.5

n – Число каналов
c – Интенсивный входящий поток
e – Интенсивное обслуживания
w – Интенсивный поток выходов
 Комментарий модератора 
Теги кода добавлены модератором. По правилам форума, код должен быть оформлен соответствующими тегами. Для оформления кода Delphi следует выделить этот код и на панели редактирования сообщения нажать кнопку: "DELPHI".
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.01.2013, 11:31
Ответы с готовыми решениями:

Многоканальная СМО с отказами ( система массового обслуживания - Delphi)
Составить программу решения задачи в среде программирования Delphi. На промышленном предприятии...

Система массового обслуживания
Дана задача по системе массового обслуживания: АТС поселка обеспечивает не более 5 переговоров...

Трубуется помощь для написания программы Система Массового Обслуживания.
На станцию техобслуживания (СТО) в течении часа в среднем приезжает 7 машин. Для их обслуживания...

Докончить программу "Система массового обслуживания"
Есть листинг программы СМО с ограниченным временем ожидания обслуживания, нужно составить полную...

4
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
13.01.2013, 13:09 2
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils, System, Windows, Crt32;
 var l,n,k:integer;
 out:text;
 a,b,c,e,w,p,j,o,q,v,z,x,d,t:real;
 function f(k:real):real;
 begin if (k=0) or (k=1)
 then f:=1
 else f:=f(k-1)*k;
 end;
 Function stepen(A, B: Real): Real;
 {Âîçâåäåíèå À â ñòåïåíü Â}
 begin
 if A > 0 then
 stepen:= Exp(B*Ln(A)) else if A<0 then
 stepen:= Exp(B*Ln(Abs(A))) else if B=0 then
 stepen:= 1 else
 stepen:= 0;
 end;
 
 { Ôóíêöèÿ ïåðåêîäèðîâêè ANSI-ñòðîêè â ASCII-ñòðîêó,
  ïîçâîëÿåò âûäàâàòü ñîîáùåíèÿ â êîíñîëüíîì ïðèëîæåíèè íà ðóññêîì ÿçûêå }
function Rus(mes: string): string;
var
  i: byte;
begin
  for i := 1 to length(mes) do
  case mes[i] of
    'À' .. 'ï': mes[i] := Chr(Ord(mes[i]) - 64);
    'ð' .. 'ÿ': mes[i] := Chr(Ord(mes[i]) - 16);
           '¨': mes[i] := #240;
           '¸': mes[i] := #241;
           '¹': mes[i] := #252;
  end;
  Rus := mes;
end;
 
begin
  // Ïåðåêëþ÷åíèå îêíà êîíñîëè íà êîäîâóþ ñòðàíèöó CP1251 (Win-1251).
  // Åñëè ïîñëå ïåðåêëþ÷åíèÿ ðóññêèå áóêâû ïîêàçûâàþòñÿ íåâåðíî,
  // ñëåäóåò îòêðûòü ñèñòåìíîå ìåíþ êîíñîëüíîãî îêíà - ùåë÷êîì ìûøè â ëåâîì
  // âåðõíåì óãëó îêíà êîíñîëè è âûáðàòü: Ñâîéñòâà -> çàêëàäêà "Øðèôò" ->
  // âûáðàòü øðèôò "Lucida Console".
  SetConsoleCP(1251);
  SetConsoleOutPutCP(1251);
 
 clrscr;
 {Ñîçäàäèì è îòêðîåì ôàéë}
 assign(out,'Shahbanov.txt'); rewrite(out);
 write(out, '| n | c | e | w | P | b | o | v ');
 write(out,'| Q | A | K | Z | X |');
 {Ââåäåì âõîäÿùèå äàííûå}
 writeln(Rus('×èñëî êàíàëîâ'));
 read(n);
 writeln(Rus('Ââîä âõîäÿùåãî ïîòîêà'));
 read(c);
 writeln(Rus('Ââîä îáñëóæèâàíèÿ'));
 read(e);
 writeln(Rus('Ââîä ïîòîêîâ âûõîäîâ'));
 read(w);
 {Èäåò ðàñ÷åò}
 {Êîýôôèöèåíò íàãðóçêè ñèñòåìû}
 p:=c/e;
 {Ïðèâåäåííûé ïîòîê óõîäîâ}
 b:=w/e;
 {Âåðîÿòíîñòü òîãî ÷òî âñå êàíàëû ñâîáîäíû}
 t:=stepen(p,n) / f(n);
 o:=stepen(t,-1);
 {Âåðîÿòíîñòü â îòêàçå îáñëóæèâàíèÿ}
 v:=o+stepen(p,n)/f(n);
 {Îòíîñèòåëüíàÿ ïðîïóñêíàÿ ñïîñîáíîñòü}
 q:=1-0;
 {Àáñîëþòíàÿ ïðîïóñêíàÿ ñïîñîáíîñòü}
 a:=c*q;
 {Ñðåäíåå ÷èñëî çàÿâîê â î÷åðåäè}
 j:=c/e;
 x:=(c-j)/w;
 {Ñðåäíåå ÷èñëî çàíÿòûõ ïîòîêîâ}
 z:=p-b;
 {Âûõîäíûå äàííûå â ôàéë}
 writeln(out,'');
 write(out,n,c:8:0,e:8:0,w:8:0,p:8:3,b:8:3);
 write(out,o:8:3,v:8:3,q:8:3,a:8:3,j:8:3);
 write(out,z:8:3,x:8:3);
 {Çàêðûòèå ôàéëà}
 close(out);
 end.
1
0 / 0 / 0
Регистрация: 05.05.2012
Сообщений: 18
13.01.2013, 13:10  [ТС] 3
Спасибо =)
0
0 / 0 / 0
Регистрация: 05.05.2012
Сообщений: 18
14.01.2013, 15:25  [ТС] 5
Еще раз спасибо, выручил !!
0
14.01.2013, 15:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.01.2013, 15:25
Помогаю со студенческими работами здесь

Создание системы массового обслуживания
1. Создание программы - системы массового обслуживания

Многоканальная система массового обслуживания с приоритетами
Здравствуйте! Вообщем задание такое. Реализовать модель системы, представленной на рисунке:...

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

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru