字典翻译 问答 其它 编写程序Program1_3用来仿真下面形式的离散时间信号:x[n]={.,0.1,1.1,-1.2,0,1.3,….}↑n=0
问题标题:
编写程序Program1_3用来仿真下面形式的离散时间信号:x[n]={.,0.1,1.1,-1.2,0,1.3,….}↑n=0
问题描述:

编写程序Program1_3用来仿真下面形式的离散时间信号:x[n]={.,0.1,1.1,-1.2,0,1.3,….}↑n=0

梅强回答:
  实现我就不写了   1、建立顾客类,大体如下   classConsumer   {   private:   intcount;//购买商品件数   boolcash;//是否是用现金   public:   intQuantity();//返回购买商品件数   boolCash();//返回是否是用现金   intTime();//付款过程耗时   voidGenerate();//按照频率分布表生成此顾客信息   };   2、建立柜台类   classCounter   {   private:   queue<pair<Consumer,int>>Q;//记录该柜台前排队的顾客的队列   intlast_come;//记录正在柜台前付款的那个顾客来到柜台的时刻   public:   Counter();//构造函数,把队列清空,last_come设置为0   voidConsumer_Come(Consumer,int);//第一个形参为该顾客的信息,第二个形参为该顾客开始排队的时间   intPay();//模拟柜台前的各个顾客的付款,并返回完成的时刻   };   3、对现有系统的模拟   首先生成随机数n表示一共有n个顾客到来,然后生成这n个顾客的信息,然后按照0.5min的间隔将这n个顾客随机塞到4个柜台,然后付款,并记录最终完成时间   代码近似如下   n=rand();   for(i=0;i<n;i++)   {   Consumernow;   now.Generate();   counters[rand()%4].Consumer_Come(now,i*30);   }   end=0;   for(i=0;i<4;i++)   {   intnow=counters[i].Pay();   if(now>end)end=now;   }   最后end记录的就是完成时间   4、模拟倡议的系统的运转   类似3里面那样生成n个顾客的信息,假定柜台0是普通柜台,柜台1是8个或8个一下商品的,柜台2、3是现金   然后将这n个顾客用类似于3的过程按照倡议的要求塞入这四个柜台,然后付款,然后记录时间
点击显示
其它推荐
热门其它推荐
  • 其它