91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-20
  • 語言: 其他
  • 標簽: C++??

資源簡介

客戶業務分為兩種, 第一種是申請從銀行得到一筆資金,即取款或者借款。 第二種是向銀行投入一筆資金,即存款或者還款。 Void Action() 銀行有兩個服務窗口,相應的有兩個隊列。 客戶到達銀行后先排第一個隊。queue q1; 處理每個客戶業務時,如果屬于第一種,且申請額超 出銀行現存資金總額而得不到滿足,則立即排入第二個隊 queue q2; 等候,直至滿足時才離開銀行 ;否則業務處理完后立即離開銀行。 每接待完一個第二種業務的客戶,則順序檢查和處理 (如果可能)第二個隊列中的客戶,對能滿足的申請者予以滿足,不能滿足的者重新排到 第二個隊列的隊尾。 注意: 在此檢查過程中,一旦銀行的資金總額少于或者等于剛才第一個隊列中最后一個客 戶(第二種業務)被接待之前的數額,或者本次已將第二個隊列檢查或處理了一遍,就停 止檢查(因為此時已不可能還有能滿足者)轉而繼續接待第一個隊列客戶。任何時刻都只 開一個窗口。假設檢查不需要時間。營業時間結束時所有客戶立即離開銀行。 【基本要求】 利用動態存儲結構實現模擬。 【測試數據】 一天營業開始時銀行擁有的款額為10000(元) 初始化total=10000; ,營業時間為600(分鐘)。 設定營業時間為早上9:00-晚上19:00 其他模擬參量自定,注意測定兩種極端的情況:一是兩個到達事件之間的間隔時間很短, 而客戶的交易時間很長,另一個恰好相反,設置兩個到達事件的間隔時間很長,而客戶的 交易時間很短。這個有點焦慮 【實現提示】 事件有兩類:到達銀行的和離開銀行。初始時銀行現存資金總額為total。開 始營業后的第一個事件是客戶到達, 設定一個計數器count來計算一天內客戶人數,初始化為0 營業時間從0到closetime。到達事件發生時隨機地設置 此客戶的交易時間和距下一到達事件之間的時間間隔。每一個客戶要辦理的款額也是隨機 確定的,用負值和正值分別表示第一類和第二類業務。 個人覺得用0、1、2、3分別表示取款、借款、存款、還款比較好。 變量total,closetime以及上述兩個隨機量的上下界均交互地從終端讀入,作為模擬參數。 兩個隊列和一個事件表均要用動態存儲結構實現。需考慮設置離開事件,以及如何設 計第二個隊列的存儲結構以獲得較高的效率。注意:事件表是按時間順序有序的。 void getTime();

資源截圖

代碼片段和文件信息

#include“Client.h“
#include
#include
using?namespace?std;


int?Client::getNum()?
{
return?num;
}

string?Client::getAction()?
{
return?action;
}

int?Client::getMoney?()
{
return?money;
}

void?Client::setNum?(int?value)
{
num=value;
}

void?Client::setAction?(string?value)
{
action=value;
}

void?Client::setMoney(int?value)?
{
money=value;
}


void?Client::Acction(Client?&c)
{

int?m;//客戶交易的錢
int?r;//表示隨機數

long?seed=long(time(0));//隨機數生成器的種子
srand(seed);

r=rand();
r=r%4;
if(r==0)?//表示第一類業務的取款
{
num++;
m=rand();
m=m%10000;

c.setNum(num);
c.num=c.getNum();

c.setAction(“取款“);
c.action=c.getAction();

c.setMoney(m);
c.money=c.getMoney();

????}
????else?if(r==1)???//表示第一類業務的借款
{
num++;
m=rand();
????????m=m%10000;

c.setNum(num);
c.num=c.getNum();

c.setAction?(“借款“);
c.action=c.getAction();

c.setMoney(m);
c.money=c.getMoney();

}
else?if(r==2)??//表示第二類業務的存款
{
num++;
m=rand();
m=m%10000;

c.setNum(num);
c.num=c.getNum();

c.setAction(“存款“);
c.action=c.getAction();

c.setMoney(m);
c.money=c.getMoney();

}
else????//表示第二類業務的還款
{
num++;
m=rand();
m=m%10000;

c.setNum(num);
c.num=c.getNum();

???? c.setAction?(“還款“);
c.action=c.getAction();

c.setMoney(m);
c.money?=c.getMoney();

}
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1493??2010-12-29?16:01??銀行業務模擬\Client.cpp

?????文件????????413??2010-12-29?16:01??銀行業務模擬\Client.h

?????文件??????14997??2010-12-29?16:01??銀行業務模擬\Main.cpp

?????文件???????2440??2010-12-29?15:50??銀行業務模擬\Time.cpp

?????文件????????615??2010-12-23?21:29??銀行業務模擬\Time.h

?????目錄??????????0??2011-10-16?14:48??銀行業務模擬

-----------?---------??----------?-----??----

????????????????19958????????????????????6


評論

共有 條評論