這篇文章主要介紹“怎么用C++編寫停車場管理系統(tǒng)”,在日常操作中,相信很多人在怎么用C++編寫停車場管理系統(tǒng)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么用C++編寫停車場管理系統(tǒng)”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
創(chuàng)新互聯(lián)主要從事網(wǎng)站制作、成都網(wǎng)站建設、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務沙雅,十多年網(wǎng)站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:028-86922220#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<cstdlib> #include<algorithm> #include<queue> #include<vector> #include<stack> #include<map> using namespace std; struct node { string no;//車牌號 int time;//車輛進入的時間(以小時為單位) int sub;//車輛在停車場的位置 } nod; map<string,int>mp;//用來檢測車輛在停車場或者在便道內 deque<node>q1;//模擬停車場 deque<node>q2;//模擬便道 stack<node>sk;//交換媒介 string str1="park",str2="pavement"; void Push(int n)//車輛駛入操作 { cout<<"請輸入要進入車輛的車牌號"<<endl; string x; int y,ans; cin>>x; cout<<"請輸入該車輛進入停車場的時間(時間為整形時刻)"<<endl; cin>>y; if(!mp[x])//如果此車不在停車場或者便道內執(zhí)行以下命令 { if(q1.size()<n)//如果停車場未滿 { nod.no=x; nod.time=y; nod.sub=q1.size()+1; q1.push_back(nod); mp[x]=q1.size(); } else//停車場滿了之后進入便道 { nod.no=x; nod.time=y; nod.sub=q2.size()+1; q2.push_back(nod); mp[x]=n+q2.size(); } } else cout<<"錯誤:該車輛已在停車場內!"<<endl; } void Pop(int n)//車輛駛出操作 { cout<<"請輸入要駛出車輛的車牌號"<<endl; string x; int y,ans; cin>>x; cout<<"請輸入該車輛駛出停車場的時間(時間為整形時刻)"<<endl; cin>>y; if(!mp[x]) cout<<"錯誤:該輛并不在停車場內!"<<endl; else if(mp[x]<=n)//如果該車在停車場內 { mp[x]=0; while(q1.back().no!=x)//車出 { q1.back().sub--; sk.push(q1.back()); q1.pop_back(); } ans=y-q1.back().time; q1.pop_back(); while(!sk.empty()) { q1.push_back(sk.top()); sk.pop(); mp[q1.back().no]=q1.back().sub; } if(!q2.empty())//如果便道里也有車,那么進入停車場,并且便道后面的車向前移動 { q2.front().time=y; q2.front().sub=q1.size()+1; q1.push_back(q2.front()); q2.pop_front(); while(!q2.empty()) { q2.back().sub--; sk.push(q2.back()); q2.pop_back(); } while(!sk.empty()) { q2.push_back(sk.top()); sk.pop(); mp[q2.back().no]=q1.back().sub; } mp[q1.back().no]=q1.size(); } cout<<"該車輛一共停了 "<<ans<<" 個小時"<<endl; cout<<"所以該車輛需要繳納 "<<ans*5<<"元"<<endl; } else if(mp[x]>n)//如果車在便道里,那么直接離開,后面的車向前移動 { mp[x]=0; while(q2.back().no!=x) { q2.back().sub--; sk.push(q2.back()); q2.pop_back(); } q2.pop_back(); while(!sk.empty()) { q2.push_back(sk.top()); sk.pop(); } cout<<"由于該車輛并未進入停車場,所以不進行收費"<<endl; } } void Query1(int n)//查詢停車場的停車狀態(tài) { cout<<"請輸入要查詢狀態(tài)的車牌號"<<endl; cout<<endl; string x; cin>>x; if(!mp[x]) cout<<"該車輛并未在停車場"<<endl; else if(mp[x]<=n) cout<<"該車輛位于停車場"<<mp[x]<<"號位"<<endl; else cout<<"該車輛位于"<<mp[x]-n<<"號便道"<<endl; } void Query2(int n)//查詢停車場的空車位 { cout<<endl; if(q1.size()==n) cout<<"停車場已滿"<<endl; else { cout<<"停車場的"<<q1.size()+1; for(int i=q1.size()+2; i<=n; i++) cout<<"、"<<i; cout<<"號位車為空"<<endl; } } int main() { int n; cout<<" **************停車場管理系統(tǒng)**************"<<endl; cout<<endl; cout<<"停車場管理系統(tǒng)說明:"<<endl; cout<<"1.當停車場車位已滿之后,車將會停在便道"<<endl; cout<<"2.停車場按照每小時五元的標準收費(不足一小時按照一小時計算)"<<endl; cout<<"3.停在便道的車輛不收費。"<<endl; cout<<endl; cout<<"首先請設置停車場的總共的車位數(shù):"<<endl; cin>>n; cout<<endl; cout<<"*********車位設置完畢!下面開始停車場管理系統(tǒng)模擬*********"<<endl; cout<<endl; cout<<" *********操作說明*********"<<endl; cout<<endl; cout<<"車輛駛入登記->請按1 ^_^ 車輛駛出登記->請按2 ^_^"<<endl; cout<<endl; cout<<"查詢停車場的停車狀態(tài)->請按3 ^_^ 查詢停車場空閑車位->請按4 ^_^ "<<endl; cout<<endl; cout<<"退出停車場管理系統(tǒng)->請按0 ^_^"<<endl; cout<<endl; cout<<"說明完畢!下面開始操作"<<endl; cout<<endl; while(1) { cout<<"********請選擇操作1~4或者退出按0********"<<endl; cout<<endl; int t; cin>>t; if(t==1) Push(n); else if(t==2) Pop(n); else if(t==3) Query1(n); else if(t==4) Query2(n); else break; cout<<endl; cout<<"***********************biubiu***********************"<<endl; cout<<"***********************biubiu***********************"<<endl; cout<<endl; } cout<<"歡迎使用停車場管理系統(tǒng),期待您的下次使用^_^"<<endl; }
結果:
到此,關于“怎么用C++編寫停車場管理系統(tǒng)”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站建設公司網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)建站www.rwnh.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
當前名稱:怎么用C++編寫停車場管理系統(tǒng)-創(chuàng)新互聯(lián)
鏈接URL:http://www.rwnh.cn/article48/dhhchp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供面包屑導航、網(wǎng)站內鏈、虛擬主機、動態(tài)網(wǎng)站、建站公司、網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容