停車場管理系統(tǒng)-面相對象程序設計_第1頁
停車場管理系統(tǒng)-面相對象程序設計_第2頁
停車場管理系統(tǒng)-面相對象程序設計_第3頁
停車場管理系統(tǒng)-面相對象程序設計_第4頁
停車場管理系統(tǒng)-面相對象程序設計_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質文檔-傾情為你奉上專心-專注-專業(yè)面向對象程序設計課程設計報告 學 院:_ 電氣與信息工程學院_ 設計題目: 停車場管理系統(tǒng)設計 指導教師評語: _ _ _ _ 成績(五級記分制):_ _ 指導教師(簽字):_ _ 摘要 本程序為一個簡單的停車場管理系統(tǒng)。程序通過定義車輛類,包含、車的車牌號、顏色、車型、到達時間和離開時間等信息和先關屬性實現操作行為,再定義一個管理類,完成對停車場的管理。調用多個函數,實現車輛信息的查詢、添加、刪除、修改和統(tǒng)計等功能。程序設置有一個菜單,進入菜單后按提示選擇你將訪問的功

2、能即可。程序設計簡潔,操作起來也很方便,實用性較強。關鍵字:類、函數、停車場管理系統(tǒng) 課程設計任務書設計題目:停車場管理系統(tǒng)設計學生姓名課程名稱面向對象程序設計課程設計專業(yè)班級地 點起止時間設計內容及要求1)問題描述定義車輛類,屬性有車牌號、顏色、車型(小汽車、小卡、中卡和大卡)、到達的時間和離開的時間等信息和相關的對屬性做操作的行為。定義一個管理類,完成對停車場的管理。停車場的具體要求:設停車場是一個可停放n輛汽車的狹長通道,且只有一個大門可供汽車進出。汽車在停車場內按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車停放在車場的最北端),若車場內已停滿n輛汽車,則后

3、來的汽車只能在門外的便道上等待,一旦有車開走,則排在便道上的第一輛車即可開入;每輛停放在車場的車在它離開停車場時必須按它停留的時間長短交納費用。2)功能要求(1)添加功能:程序能夠添加到達停車場的車輛信息,要求車輛的車牌號要唯一,如果添加了重復編號的記錄時,則提示數據添加重復并取消添加。(2)查詢功能:可根據車牌號、車型等信息對已添加的停車場中的車輛信息進行查詢,如果未找到,給出相應的提示信息,如果找到,則顯示相應的記錄信息;(3)顯示功能:可顯示當前系統(tǒng)中所有車輛的信息,每條記錄占據一行。(4)編輯功能:可根據查詢結果對相應的記錄進行修改,修改時注意車牌號的唯一性。(5)刪除功能:主要實現對

4、已添加的車輛記錄進行刪除。如果當前系統(tǒng)中沒有相應的人員記錄,則提示“記錄為空!”并返回操作。(6)統(tǒng)計功能:能統(tǒng)計停車場中車輛的總數、按車型、按到達時間進行統(tǒng)計等。3)問題的解決方案根據系統(tǒng)功能要求,可以將問題解決分為以下步驟: (1)應用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設計;(2)分析系統(tǒng)中的各個實體及它們之間的關系; (3)根據問題描述,設計系統(tǒng)的類層次; (4)完成類層次中各個類的描述; (5)完成類中各個成員函數的定義; (6)完成系統(tǒng)的應用模塊; (7)功能調試;(8)完成系統(tǒng)總結報告。根據題目要求,運用所學知識,完成設計和實現工作,并按照書寫規(guī)范,撰寫課程設計報告

5、。設計參數(1)系統(tǒng)分析、設計正確。(2)結果以圖表方式顯示。(3)界面簡潔、美觀。(4)報告格式規(guī)范。進度要求周一:明確設計任務,學習相關基礎知識周二:熟悉各知識點,進行基礎練習周三:根據題目要求,進行設計和實現周四:根據題目要求,進行設計和實現周五:程序測試參考資料1Richard Johnsonbaugh. Martin Kalin.面向對象程序設計C+語言描述.機械工業(yè)出版社.2009年2錢能.+語言程序設計教程.清華大學出版社.2005年其它說明本表應在每次實施前一周由負責教師填寫二份,院系審批后交院系辦備案,一份由負責教師留用。若填寫內容較多可另紙附后。一題多名學生共用的,在設計內

6、容、參數、要求等方面應有所區(qū)別。 目錄摘要-2課程設計任務書-3第二章 軟件需求分析說明書-6第二章 系統(tǒng)分析與設計-72.1軟件界面設計-72.2 軟件的結構設計-82.3 軟件的算法設計-15第三章 軟件測試-16 3.1 車輛瀏覽顯示-16 3.2 車輛信息查詢-17 3.3 車輛統(tǒng)計統(tǒng)計-18 3.4 車輛入庫添加-19 3.5 車輛離開刪除-19 3.6 車輛編輯修改-20 3.7 保存并安全退出程序-20致謝-21參考文獻-22軟件需求分析說明書 1.1停車場管理系統(tǒng)說明 停車場管理系統(tǒng)設計簡潔,操作方便,處理信息量很大,針對車輛流通量大的車庫設計。程序用菜單選擇的方式完成下列功能

7、:信息顯示、查詢、添加、刪除、修改和統(tǒng)計。“信息瀏覽”選項中,可以將整個停車場的車輛信息全部顯示出來?!靶畔⒉樵儭边x項中,可以按車牌號對某輛車的信息進行訪問,可以查詢到車的顏色、型號和入庫時間。“車輛統(tǒng)計”選項中,可以按車牌號、車型和入庫時間三種方式對停車場的車輛進行統(tǒng)計,并顯示該類車輛的全部信息和輸出該類車輛的數量?!败囕v添加”選項中,選擇添加的功能,從屏幕上錄入車輛信息,并在停車場內檢驗是否有相同的車牌號存在?!败囕v刪除”選項中,車輛離開,通過車牌號進行刪除,并按車型和停留時間計算車輛需要繳納的費用?!败囕v修改”選項中,通過車牌號對車輛的顏色、車型和入庫時間進行修改?!靶畔⒈4妗边x項中,在

8、結束程序時安全退出程序,并保存你所修改過的信息。本項目在主界面有多個選項供你選擇,你可以通過屏幕輸入,任意選擇你需要被服務的功能。本項目功能齊全,能初步完成停車場的管理工作。系統(tǒng)分析與設計2.1 軟件界面設計在出現的界面中選擇你需要用到的功能選項,然后按提示輸入信息,即可使用程序中的顯示、查詢、統(tǒng)計、添加、刪除、修改等功能。系統(tǒng)界面如圖2-1所示。 圖2.1 主菜單 2.2 軟件的數據(結構)設計程序使用類來組織管理數據,共包括三個類,分別是車位類和停車場類和便道類。車輛類car。類屬性包括車牌號( num)、顏色(color)、車型(size)、入庫時間(inday、inhour、inmin

9、)、離開時間(outday、outhour、outmin)和判斷是在停車場還是便道的標志(x),實現對車輛類的描述。停車場類carA。屬性包括車庫集合、總大?。╯ize)和當前大?。╪owsize)成員函數包括信息顯示(show)、修改信息(xiugai)、車位添加(tianjia)、離開信息(likai)、計費(money)等操作。停車場類carB。屬性包括車庫集合、總大小(size)和當前大?。╪owsize)成員函數包括信息顯示(show)、入庫信息(ruku)等操作。在主程序中包括查詢(find)、添加(tianjia)、統(tǒng)計(tongji)、刪除(shanchu)、修改(xiugai

10、)等主要功能。主程序源代碼如下:find(carA& a,carB& b)int y;cout endl;coutbuff;system(cls);int p=0,q=0;for(int i=0;ia.putsize();i+)if(a.a(i).putnum()=buff&a.a(i).putr()=1)system(cls);cout你要查詢的車輛的信息:endlendl;cout車牌號 顏色 車輛類型 入庫的時間endlendl;a.a(i).putmessage();p=1;cout endl;cout 1 返回y;caidan(a,b);for(int j=0;ja.putsize(

11、);j+)if(b.a(j).putnum()=buff)system(cls);cout車牌號 顏色 車輛類型 endl;b.a(j).putmessage1();cout endlendl;cout在變道等待中endl;cout 1 返回q;caidan(a,b);if(p=0&q=0)cout endl;cout對不起!你輸入的車輛不再本停車場或便道中endlendl;cout1 繼續(xù)輸入 2 返回 endlendl; coutt;switch(t)case 1:find(a,b);break;case 2: caidan(a,b);break;shanchu(carA& a,carB&

12、 b)int y;cout endl;coutbuff;system(cls);int p=0,q=0;for(int i=0;ia.putsize();i+)if(a.a(i).putnum()=buff&a.a(i).putr()=1)system(cls);cout你要刪除的車輛的信息:endlendl;cout車牌號 顏色 車輛類型 入庫的時間endlendl;a.a(i).putmessage();p=1;a.likai(i);cout endl;cout 1 返回 i;caidan(a,b);if(a.putnowsize()=(a.putsize()-1)a.tianjia(b.

13、ruku();cout endl;cout 刪除成功 1 返回y;caidan(a,b);if(b.putnowsize()=0) cout便道無車 1 返回主界面o; caidan(a,b); if(p=0&q=0)cout endl;cout對不起!你輸入的車輛不再本停車場或便道中endlendl;cout1 繼續(xù)輸入 2 返回 endlendl; coutt;switch(t)case 1:shanchu(a,b);break;case 2: caidan(a,b);break;xiugai(carA& a,carB& b)cout endl;coutbuff;system(cls);i

14、nt p=0,q=0;for(int i=0;ia.putsize();i+)if(a.a(i).putnum()=buff&a.a(i).putr()=1)system(cls);cout你要修改的車輛的信息:endlendl;cout車牌號 顏色 車輛類型 入庫的時間endlendl;a.a(i).putmessage();p=1;a.xiugai(i);cout修改成功 1 返回 k;caidan(a,b);if(p=0&q=0)cout endl;cout對不起!你輸入的車輛不再本停車場或便道中endlendl;cout1 繼續(xù)輸入 2 返回 endlendl; coutt;switc

15、h(t)case 1:xiugai(a,b);break;case 2: caidan(a,b);break; tongji(carA& a, carB& b)cout1 按顏色統(tǒng)計 2 按車型統(tǒng)計 3 按時間統(tǒng)計y; system(cls);switch(y)case 1:int j=0;string buff; cout輸入顏色buff; for(int i=0;ia.putsize();i+)if(a.a(i).putr()=1&a.a(i).putcolor()=buff)j+;a.a(i).putmessage();cout endl;cout車庫內buff車子總共 j 輛endl;

16、cout endl;break;case 2:int j=0;string buff; cout輸入車型buff; for(int i=0;ia.putsize();i+)if(a.a(i).putr()=1&a.a(i).putsize()=buff)j+;a.a(i).putmessage();cout endl;cout車庫內buff總共 j 輛endl;cout endl;break;case 3:int x,j=0; cout輸入日期x;for(int i=0;ia.putsize();i+)if(a.a(i).putr()=1&a.a(i).putinday()=x)j+;a.a(

17、i).putmessage();cout endl;coutx日進入車庫的車子共 j 輛endl;cout endl;break;cout 1 返回 z;caidan(a,b);tianjia(carA& a,carB& b) system(cls);car c;int n=0,v=0;int inday,inhour,inmin;string num,color,size;cout輸入想要入庫車輛的信息:endl;cout車牌號碼 顏色 車輛型號 入庫時間(日 時 分):numcolorsizeindayinhourinmin; c.getmessage(num,color,size,ind

18、ay,inhour,inmin,1); if(a.putnowsize()a.putsize() for(int i=0;ia.putsize();i+)if(a.a(i).putnum()=num&a.a(i).putr()=1)cout對不起!你輸入的車牌號已在車庫內存放,請核對后再輸入!endl;cout endl;cout 1、重新輸入 2、返回endl;coutn;switch(n)case 1:tianjia(a,b);break;case 2:caidan(a,b);break;if(n=0)int o;a.tianjia(c);cout1 返回o;caidan(a,b);if(

19、a.putnowsize()=a.putsize()for(int i=0;ia.putsize();i+)if(a.a(i).putnum()=num&a.a(i).putr()=1)cout對不起!你輸入的車牌號已在車庫內存放,請核對后再輸入!endl;cout endl;cout 1、重新輸入 2、返回endl;coutn;switch(n)case 1:tianjia(a,b);break;case 2:caidan(a,b);break;for(int j=0;jb.putsize();j+)if(b.a(j).putnum()=num)cout對不起!你輸入的車牌號已在便道內停放,

20、請核對后再輸入!endl;cout endl;cout 1、重新輸入 2、返回endl;coutv;switch(v)case 1:tianjia(a,b);break;case 2:caidan(a,b);break;if(n=0&v=0) cout車庫已滿,請在便道等待!endl;c.chushihua();b.tianjia(c);cout1 返回u;caidan(a,b);2.3 軟件的算法設計車牌號1顏 色信息統(tǒng)計入庫時間1車牌號顏色1型號信息添加入庫時間1信息顯示主界面1按車牌號刪除信息刪除 車牌號信息統(tǒng)計 顏 色 入庫時間11信息修改1車牌號 圖2.2 程序流程圖軟件測試3.1車輛瀏覽顯示 從屏幕輸入1,即可顯示整個停車場的車輛信息。 圖3.1 信息顯示3.2車輛信息查詢 從屏幕輸入2,然后根據提示輸入車牌號,即可獲得需要查詢的車輛的信息。 圖

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論