




已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
一 需求分析n 銀行模擬系統(tǒng)要求模擬銀行一天0closetime的營業(yè)情況,業(yè)務總共分為兩類。存款與取款。開始銀行擁有一定數(shù)量的總額total供運行。程序運行輸出銀行在處理業(yè)務后的事件表。包括時間,存款數(shù)量,取款數(shù)量,銀行余額,等待情況。n 程序輸入的形式是按以下順序輸入到屏幕中,只需按照提示操作即可:銀行總余額 銀行運行時間-交易時間上、下界-事件時間上、下界-客戶存取金額n 程序輸出的形式是按照時間順序輸出銀行運行期間的事件表n 程序的功能是模擬顯示銀行在整個營業(yè)階段的運行狀況二 概要設計本程序中用到的抽象數(shù)據(jù)類型有偽隨機數(shù)類random,隊列類bankqueue,客戶類client偽隨機數(shù)類random的定義如下:class randompublic:random();/空構造函數(shù)random(unsigned short initialSeed);/帶參構造unsigned short randomInterger();/種子seed產(chǎn)生函數(shù)double rabdomDouble();/雙精度數(shù)產(chǎn)生函數(shù)double between(double low ,double high);/范圍隨機數(shù)產(chǎn)生函數(shù)(double型)int between(int low,int high);/范圍隨機數(shù)產(chǎn)生函數(shù)(int型)private:unsigned short seed;客戶類client的定義如下:class Client public:int num;int money;Client *next;int Dealingtime;int Casetime;客戶隊列bankqueue定義如下:class bankqueuepublic:int n;bankqueue();/構造bankqueue();/析構void enqueue(Client * c);/進隊列Client* dequeue();/出隊列int isEmpty();/判斷空否void deleteALLValues();/刪除所有元素private:Client *front,*tail;本程序利用隊列結果儲存客戶信息: 按提示輸入初始化銀行系統(tǒng)客戶信息隨機類產(chǎn)生客戶信息儲存與q1隊列里從q1中逐個彈出客戶信息,進行交易,并顯示結果不能滿足的客戶保存在q2中等待處理時間到或者所以業(yè)務已經(jīng)完成就退出。刪除q1,q2保存的信息。 三 詳細設計隨機數(shù)類實現(xiàn):l 隨機數(shù)類構造種子=時鐘;l 返回短整數(shù)的函數(shù)乘數(shù)=33339;加數(shù)=;種子=(乘數(shù)*種子+加數(shù))%;返回種子;l 在low和high之間產(chǎn)生整型隨機數(shù)調(diào)用 返回短整數(shù)的函數(shù)+low; 銀行節(jié)點和隊列類實現(xiàn):l 銀行隊列構造函數(shù)前指針=0;尾指針=0;長度=0;l 析構函數(shù);進隊列函數(shù)(銀行節(jié)點指針)節(jié)點指針數(shù)據(jù)復制到新節(jié)點指針數(shù)據(jù)如果隊列空前指針=0; 尾指針=0尾指針=0;長度+1;出隊列新建指針P頭指針向前走查看隊列是否為空返回指針Pl 判斷隊列是否為空返回 頭指針是否為0;刪除所有元素長度,尾指針置0;從隊列里彈出節(jié)點并刪除四 調(diào)試分析 銀行模擬系統(tǒng)調(diào)試過程中遇到的問題:由于要運用到文件輸入輸出流,無法訪問Bank類的私有數(shù)據(jù),故將大部分程序寫入Main函數(shù)中經(jīng)驗和體會等:從寫完代碼到調(diào)試成功,最后不斷的改進和完善,不僅鞏固了類定義和實現(xiàn),還極大的挑戰(zhàn)了我們編程能力。五 用戶使用說明 銀行模擬系統(tǒng)在程序運行時會依次顯示-歡迎使用銀行模擬系統(tǒng),請按提示輸入-請輸入銀行最初存款總額:請輸入銀行營業(yè)時間:輸入客戶交易時間的上、下界,并以逗號分隔開:請輸入事件之間時間間隔的上、下界,并以逗號分隔開:請按順序輸入客戶存取款的數(shù)額(取款負在金額前增加“-”,存款直接輸入金額即可,并以空格區(qū)分)輸入0模擬結束:只需按照提示輸入數(shù)據(jù)即可得到結果六 測試數(shù)據(jù) 銀行模擬系統(tǒng):l 正確的測試數(shù)據(jù):輸入數(shù)據(jù):0 600 100,1 20,1 100 200 -300 20 0 y10000 60000 20,1 20,1 -10000 -1 10000 -50000 60000 -7000 -80000 -90000 0 n輸出:-歡迎使用銀行模擬系統(tǒng),請按提示輸入-請輸入銀行最初存款總額:請輸入銀行營業(yè)時間:輸入客戶交易時間的上、下界,并以逗號分隔開:請輸入事件之間時間間隔的上、下界,并以逗號分隔開:請按順序輸入客戶存取款的數(shù)額(取款負在金額前增加“-”,存款直接輸入金額即可,并以空格區(qū)分)輸入0模擬結束:第1個客戶,從營業(yè)開始的第0分鐘,來到銀行,想要存取款100當前銀行余額為¥0第1個客戶,從營業(yè)開始的第0分鐘,向銀行存款$100當前銀行余額為¥100第1個客戶,從營業(yè)開始的第53分鐘,離開銀行當前銀行余額為¥100現(xiàn)在檢查第二隊列第2個客戶,從營業(yè)開始的第65分鐘,來到銀行,想要存取款200當前銀行余額為¥100第2個客戶,從營業(yè)開始的第65分鐘,向銀行存款$200當前銀行余額為¥300第2個客戶,從營業(yè)開始的第72分鐘,離開銀行當前銀行余額為¥300現(xiàn)在檢查第二隊列第3個客戶,從營業(yè)開始的第79分鐘,來到銀行,想要存取款-300當前銀行余額為¥300第3個客戶,從營業(yè)開始的第79分鐘,向銀行存款$-300當前銀行余額為¥0第3個客戶,從營業(yè)開始的第148分鐘,離開銀行當前銀行余額為¥0現(xiàn)在檢查第二隊列第4個客戶,從營業(yè)開始的第155分鐘,來到銀行,想要存取款20當前銀行余額為¥0第4個客戶,從營業(yè)開始的第155分鐘,向銀行存款$20當前銀行余額為¥20第4個客戶,從營業(yè)開始的第230分鐘,離開銀行當前銀行余額為¥20現(xiàn)在檢查第二隊列廣播:走過路過不要錯過,存錢取錢安全方便又實惠是否需要對次日繼續(xù)模擬(Y/N):請輸入銀行最初存款總額:請輸入銀行營業(yè)時間:輸入客戶交易時間的上、下界,并以逗號分隔開:請輸入事件之間時間間隔的上、下界,并以逗號分隔開:請按順序輸入客戶存取款的數(shù)額(取款負在金額前增加“-”,存款直接輸入金額即可,并以空格區(qū)分)輸入0模擬結束:第1個客戶,從營業(yè)開始的第0分鐘,來到銀行,想要存取款-10000當前銀行余額為¥10000第1個客戶,從營業(yè)開始的第0分鐘,向銀行存款$-10000當前銀行余額為¥0第1個客戶,從營業(yè)開始的第13分鐘,離開銀行當前銀行余額為¥0現(xiàn)在檢查第二隊列第2個客戶,從營業(yè)開始的第25分鐘,來到銀行,想要存取款-1當前銀行余額為¥0銀行總額不足,第2個客戶轉入第二隊列等待當前銀行余額為¥0第3個客戶,從營業(yè)開始的第32分鐘,來到銀行,想要存取款10000當前銀行余額為¥0第3個客戶,從營業(yè)開始的第32分鐘,向銀行存款$10000當前銀行余額為¥10000第3個客戶,從營業(yè)開始的第41分鐘,離開銀行當前銀行余額為¥10000現(xiàn)在檢查第二隊列在第3個客戶后,從營業(yè)開始的第57分鐘,有第二隊列客戶從銀行取款-1離開第4個客戶,從營業(yè)開始的第57分鐘,來到銀行,想要存取款-50000當前銀行余額為¥9999銀行總額不足,第4個客戶轉入第二隊列等待當前銀行余額為¥9999第5個客戶,從營業(yè)開始的第72分鐘,來到銀行,想要存取款60000當前銀行余額為¥9999第5個客戶,從營業(yè)開始的第72分鐘,向銀行存款$60000當前銀行余額為¥69999第5個客戶,從營業(yè)開始的第84分鐘,離開銀行當前銀行余額為¥69999現(xiàn)在檢查第二隊列在第5個客戶后,從營業(yè)開始的第111分鐘,有第二隊列客戶從銀行取款-50000離開第6個客戶,從營業(yè)開始的第111分鐘,來到銀行,想要存取款-7000當前銀行余額為¥19999第6個客戶從銀行取款¥-7000當前銀行余額為¥12999第6個客戶,從營業(yè)開始的第113分鐘,離開銀行當前銀行余額為¥12999第7個客戶,從營業(yè)開始的第126分鐘,來到銀行,想要存取款-80000當前銀行余額為¥12999銀行總額不足,第7個客戶轉入第二隊列等待當前銀行余額為¥12999第8個客戶,從營業(yè)開始的第130分鐘,來到銀行,想要存取款-90000當前銀行余額為¥12999銀行總額不足,第8個客戶轉入第二隊列等待當前銀行余額為¥12999第9個客戶,從營業(yè)開始的第148分鐘,來到銀行,想要存取款當前銀行余額為¥12999第9個客戶,從營業(yè)開始的第148分鐘,向銀行存款$當前銀行余額為¥第9個客戶,從營業(yè)開始的第155分鐘,離開銀行當前銀行余額為¥現(xiàn)在檢查第二隊列在第9個客戶后,從營業(yè)開始的第171分鐘,有第二隊列客戶從銀行取款-80000離開在第9個客戶后,從營業(yè)開始的第178分鐘,有第二隊列客戶從銀行取款-90000離開廣播:走過路過不要錯過,存錢取錢安全方便又實惠是否需要
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆青海省西寧市名校英語七下期中檢測模擬試題含答案
- 辦事公道考試試題及答案
- 安全自救知識試題及答案
- 安全試題及答案文庫
- 安全生產(chǎn)知識考試試題及答案
- 2025年農(nóng)村一二三產(chǎn)業(yè)融合發(fā)展的農(nóng)村養(yǎng)老產(chǎn)業(yè)發(fā)展趨勢與政策建議報告
- 安全監(jiān)理員考試試題及答案
- 數(shù)字貨幣應用對2025年貨幣政策傳導機制影響下的金融風險防控策略報告
- 2025年虛擬偶像產(chǎn)業(yè)市場競爭力報告:文化影響力與娛樂產(chǎn)業(yè)的融合發(fā)展
- 農(nóng)業(yè)廢棄物堆肥處理技術對土壤改良效果評估報告
- 醫(yī)療器械行業(yè)市場部人員崗位職責
- (中醫(yī)內(nèi)科)高級、副高級職稱考試模擬試題及答案
- 跌倒墜床原因分析預防措施
- 部編版小學道德與法治三年級下冊期末質量檢測試卷【含答案】5套
- 弱電施工安全技術交底
- DB21T 3354-2020 遼寧省綠色建筑設計標準
- (完整版)重大危險源清單及辨識表
- 安全生產(chǎn)知識應知應會
- 08S305-小型潛水泵選用及安裝圖集
- 體育器材采購設備清單
- 二手車鑒定評估報告書最終
評論
0/150
提交評論