1) 問題描述設停車場是一個可停放 n 輛汽車的狹長通道,且只有一個大門可供汽車進出。汽車在停車場內按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車停放在車場的最北端)。若停車場內已經停滿 n輛車,那么后來的車只能在門外的便道上等候。一旦有車開走,則排在便道上的第一輛車即可開入。當停車場內某輛車要離開時,在它之后進入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其他車輛再按原次序進入車場。每輛停放在車場的車在它離開停車場時必須按它停留的時間長短繳納費用。試為停車場編制按上述要求進行管理的模擬程序。2)基本要求以棧模擬停車場,以隊列模擬車場外的便道,按照從終端讀入數據的序列進行模擬管理。每一組輸入數據包括三個數據項:汽車的“到達”(‘A’表示)或“離去”(‘D’表示)信息、汽車標識(牌照號)以及到達或離去的時刻。對每一組輸入數據進行操作后的輸出信息為:若是車輛到達,則輸出汽車在停車場內或者便道上的停車位置;若是車輛離去,則輸出汽車在停車場停留的時間和應繳納的費用(便道上停留的時間不收費)。棧以順序結構實現,隊列以鏈表結構實現。3)測試數據設n=2,輸入數據為:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3, 20),(‘A’,4,25),(‘A’,5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。每一組輸入數據包括三個數據項:汽車 “到達”或“離去”信息、汽車牌照號碼及到達或離去的時刻,其中,‘A’表示到達;‘D’表示離去,‘E’表示輸入結束。其中:(‘A’,1,5)表示1號牌照車在5這個時刻到達,而(‘D’,1,15)表示1號牌照車在15這個時刻離去。4)提示?需另設一個棧,臨時停放為給要離去的汽車讓路而從停車場退出來的汽車。輸入數據按到達或離去的時刻有序。棧中每個元素表示一輛汽車,包含兩個數據項:汽車的牌照號碼和進入停車場的時刻。5)輸入輸出:輸入數據:程序接受5個命令,分別是:到達(‘A’,車牌號,時間);離去(‘D’,車牌號,時間);停車場(‘P’, 0, 0)顯示停車場的車數;候車場(‘W’, 0, 0)顯示候車場的車數;退出(‘E’, 0, 0)退出程序。輸出數據:對于車輛到達,要輸出汽車在停車場內或者便道上的停車位置;對于車輛離去,則輸出汽車在停車場停留的時間和應繳納的費用(便道上不收費)。
- 0 回答
- 0 關注
- 1203 瀏覽
添加回答
舉報
0/150
提交
取消
