Автор работы: Пользователь скрыл имя, 26 Октября 2011 в 14:19, курсовая работа
За последнее время в самых разных областях жизнедеятельности человека возникла необходимость в решении различных вероятностных задач, связанных с работой так называемых систем массового обслуживания (СМО). Под системой массового обслуживания (СМО) понимают динамическую систему, предназначенную для эффективного обслуживания потока заявок (требований на обслуживание) при ограничениях на ресурсы системы.
//----------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//----------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//----------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
double t=0;
double lyambda=0;
double p0=0;
double mu=0;
double ro=0;
int m=0;
int n=0;
double potk=0;
double buff=0;
double buff2=0;
double p=0;
double xi=0;
double rsr=0;
double omega=0;
double k=0;
double tog=0;
double tsr=0;
double l=0;
double p1=0;
double p2=0;
double pn=0;
double pzan=0;
double A=0;
double psvob=0;
double L=0;
double p3=0;
double pm=0;
double pm1=0;
double pm2=0;
double z=0;
lyambda=StrToFloat(
t=StrToFloat(LabeledEdit2->
n=StrToInt(LabeledEdit3->Text)
m=StrToInt(LabeledEdit4->Text)
mu=1/t;
Memo1->Text="Параметр потока обслуживаний(mu)";
Memo1->Text=Memo1->Text+" "+FloatToStr(mu);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
ro=lyambda/mu;
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(ro);
Memo1->Text=Memo1->Text+' ';
Memo1->Lines->Add(" ");
int fac=1;
for(int i=1; i<=n; i++) {
fac=fac*i;
buff=buff+(pow(ro,i)/fac);}
p0=1/(buff+(pow(ro,n+1)/(fac*(
buff=0;
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(p0);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
potk=(pow(ro,n+m)/(pow(n,m)*
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(potk);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
Memo1->Text=Memo1->Text+"
fac=1;
for (int i=1; i<=n; i++)
{
fac=fac*i;
p=(pow(ro,i)/fac)*p0;
Memo1->Text=Memo1->Text+"
P"+IntToStr(i)+"="+FloatToStr(
}
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
omega=ro*(1-(pow(ro,n+m)*p0/
buff=0;
fac=1;
for (int i=1; i<=n; i++)
{
fac=fac*i;
p=(pow(ro,i)/fac)*p0;
buff=buff+(i*p);
}
omega=buff;
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(omega);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
k=omega+rsr;
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(k);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
tog=rsr/lyambda;
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(tog);
Memo1->Text=Memo1->Text+" ";
Memo1->Lines->Add(" ");
tsr=tog+(1/mu);
Memo1->Text=Memo1->Text+"
Memo1->Text=Memo1->Text+" "+FloatToStr(tsr);
Memo1->Text=Memo1->Text+" ";
}