?? telephone.cpp
字號:
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
void init();
void pushtime();
void call();
void over();
int Random();
float expon(float para);
int i,sumcall,sumloss,sumbusy,notbusyline;
int paratime,paraphone,paraline,lineover,nexteventtype;
float clock,paraat,parast,mint,nextcalltime;
int phonestatus[10000],linestatus[5000][4];
main{
scanf("%d",paraphone);
scanf("%d",paraline);
scanf("%d",paraat);
scanf("%d",parast);
scanf("%d",paratime);
init();
while(clock<paratime){
pushtime();
switch(nexteventtime){
case ccall:call();break;
case ccover:over();
}
}
repartresult();
}
init(){
clock=0;
for(i=1;i<=paraphone;i++)
phonestatus[i]=cnotbusy;
for(i=1;i<=paraline;i++){
linestatus[i][1]=cnotbusy;
linestatus[i][2]=0;
linestatus[i][3]=0;
linestatus[i][4]=cmax;
}
sumcall=0;
sumloss=0;
sumbusy=0;
nexteventtype=ccall;
nextcalltime=expon(paraat);
}
pushtime(){
mint=linestatus[1][4];
for(i=1;i<=paraline;i++)
if(linestatus[i][4]<mint){
mint=linestatus[1][4])
lineover=i;
}
if(nextcalltime<=mint){
nexteventtype=ccall;
clock=nextcalltime;
}
else{
nexteventtype=ccover;
clock=mint;
}
}
call(){
sumcall++;
notbusyline=0;
for(i=1;i<=paraline;i++)
if(linestatus[i][1]=cnotbusy){
notbusyline=i;break;}
if(notbusyline==0)
sumloss++;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -