6 158 停車場收費問題 20分

2022-09-19 00:51:10 字數 4249 閱讀 1506

東軟學習小組成員:夜楓

在停車場收費系統中,收費者會根據車型的不同按不同的單價和計費方式收取不同的停車費,其中:

轎車car:每小時8元,超過30分鐘按一小時計算,未超過30分鐘不收費

客車bus:每小時10元,30分鐘以內按半小時計費,未達1小時但超過30分鐘按1小時計算

貨車truck:每小時15元,未達1小時的按1小時計算

其他未知型別:按預設方法計算,見裁判程式。

請補充必要的類和函式定義,使停車場類parker可收取停入的n輛車的費用。

裁判測試程式樣例:

#include

#include

using

namespace std;

const

float car_price=8;

const

float bus_price=10;

const

float truck_price=15;

class

vehicle

;virtual string gettype()

;float

getprice()

;void

setprice

(float _price)

;int

getminute()

;void

setminute

(int _minute)

;vehicle

(float _price,

int _minute)

;vehicle()

;};/* 你的**將被嵌入這裡 */

intmain()

cout<<

"type:"

<

>

gettype()

<<

" minute:"

<

>

getminute()

<<

" fee:"

<

>

computefee()

<

p.park

(vp)

;delete vp;

} cout<<

"sum="

<

getsum()

<

return0;

}

輸入樣例:

輸入的第一行為進入停車場的車輛總數n. 接下來有n行輸入,每行為一輛車的型別及停車時長,時長單位為分鐘,型別』c』代表car,型別』b』代表bus,型別』t』代表truck,其他字元則為未知型別。

3

c 40

t 5b 40

輸出樣例:

輸出為n+1行,前n行輸出每輛車的型別,停車時長,收取的費用,最後一行輸出目前停車場得到的停車費總額。

type:car minute:

40 fee:

8type:truck minute:

5 fee:

15type:bus minute:

40 fee:

10sum=

33

部分**:

float vehicle::

getprice()

int vehicle::

getminute()

void vehicle::

setprice

(float _price)

vehicle::

vehicle

(float _price,

int _min)

void vehicle::

setminute

(int _minute)

class

car:

public vehicle

;virtual

float

computefee()

;virtual string gettype()

;};class

bus:

public vehicle

;virtual

float

computefee()

return

(price/2)

*time;};

virtual string gettype()

;};class

truck

:public vehicle

;virtual

float

computefee()

return price*time;};

virtual string gettype()

;};class

parker

double

getsum()

};double parker::sum=

0;

全部**:

#include

#include

using

namespace std;

const

float car_price=8;

const

float bus_price=10;

const

float truck_price=15;

class

vehicle

;virtual string gettype()

;float

getprice()

;void

setprice

(float _price)

;int

getminute()

;void

setminute

(int _minute)

;vehicle

(float _price,

int _minute)

;vehicle()

;};float vehicle::

getprice()

int vehicle::

getminute()

void vehicle::

setprice

(float _price)

vehicle::

vehicle

(float _price,

int _min)

void vehicle::

setminute

(int _minute)

class

car:

public vehicle

;virtual

float

computefee()

;virtual string gettype()

;};class

bus:

public vehicle

;virtual

float

computefee()

return

(price/2)

*time;};

virtual string gettype()

;};class

truck

:public vehicle

;virtual

float

computefee()

return price*time;};

virtual string gettype()

;};class

parker

double

getsum()

};double parker::sum=0;

intmain()

cout<<

"type:"

<

>

gettype()

<<

" minute:"

<

>

getminute()

<<

" fee:"

<

>

computefee()

<

p.park

(vp)

;delete vp;

} cout<<

"sum:"

<

getsum()

<

return0;

}

pta通過測試:

6 158 停車場收費問題 20分

東軟學習小組成員 夜楓 在停車場收費系統中,收費者會根據車型的不同按不同的單價和計費方式收取不同的停車費,其中 轎車car 每小時8元,超過30分鐘按一小時計算,未超過30分鐘不收費 客車bus 每小時10元,30分鐘以內按半小時計費,未達1小時但超過30分鐘按1小時計算 貨車truck 每小時15...

模擬停車場問題

問題描述 設停車場是乙個可停放 n 輛汽車的狹長通道,且只有乙個大門可供汽車進出。汽車在停車場內按車輛到達時間的先後順序,依次由北向南排列 大門在最南端,最先到達的第一輛車停放在車場的最北端 若車場內已停滿 n 輛汽車,則後來的汽車只能在門外的便道上等候,一旦有車開走,則排在便道上的第一輛車即可開入...

停車場收費管理的未來發展趨勢

目前市面上主流的停車場收費模式,全部是人工收費,包括 收費系統 出口收費系統等,都是採用管理員的方式,來進行收費的。隨著人工成本的不斷 以及越來越大的用工缺口,導致各物業公司的人力成本不斷增加,而另一方面,由於目前市面上大多數的停車場系統存在著收費的漏洞,幾乎各停車場都存在著停車費流失的問題,據我們...