PTA 7 2 日程安排(多重繼承 過載)

2021-10-04 11:21:57 字數 1728 閱讀 8395

已有乙個日期類date,包括三個protected成員資料

int year;

int month;

int day;

另有乙個時間類time,包括三個protected成員資料

int hour;

int minute;

int second;

現需根據輸入的日程的日期時間,安排前後順序,為此以date類和time類為基類,建立乙個日程類schedule,包括以下新增成員:

int id;//日程的id

bool operator < (const schedule & s2);//判斷當前日程時間是否早於s2

生成以上類,並編寫主函式,根據輸入的各項日程資訊,建立日程物件,找出需要最早安排的日程,並輸出該日程物件的資訊。

輸入格式: 測試輸入包含若干日程,每個日程佔一行(日程編號id 日程日期(**//)日程時間(::))。當讀入0時輸入結束,相應的結果不要輸出。

輸入樣例:

1 2014/06/27 08:00:01

2 2014/06/28 08:00:01

輸出樣例:

the urgent schedule is no.1: 2014/6/27 8:0:1

#include

#include

using

namespace std;

class

data

data

(int y,

int mo,

int d)

void

printdata()

};class

time

time

(int h,

int mi,

int s)

void

printtime()

};class

schedule

:public data,

public time

schedule

(int y,

int mo,

int d,

int h,

int mi,

int s,

int id)

:data

(y, mo, d)

,time

(h, mi, s)

void

printschedule()

bool

operator

<

(const schedule& s2);}

;bool schedule::

operator

<

(const schedule& s2)

else

if(year > s2.year)

else

else

if(month > s2.month)

else

else

if(day > s2.day)

else

else

if(hour > s2.hour)

else

else

if(minute > s2.minute)

else

else}}

}}}}

intmain()

if(i !=0)

return0;

}

PTA 7 2 然後是幾點 C

pta 7 2 然後是幾點 題幹如下 有時候人們用四位數字表示乙個時間,比如1106表示11點零6分。現在,你的程式要根據起始時間和流逝的時間計算出終止時間。讀入兩個數字,第乙個數字以這樣的四位數字表示當前時間,第二個數字表示分鐘數,計算當前時間經過那麼多分鐘後是幾點,結果也表示為四位數字。當小時為...

PTA 7 2 朋友圈(25 分)

某學校有n個學生,形成m個俱樂部。每個俱樂部裡的學生有著一定相似的興趣愛好,形成乙個朋友圈。乙個學生可以同時屬於若干個不同的俱樂部。根據 我的朋友的朋友也是我的朋友 這個推論可以得出,如果a和b是朋友,且b和c是朋友,則a和c也是朋友。請編寫程式計算最大朋友圈中有多少人。輸入的第一行包含兩個正整數n...

PTA 7 2 然後是幾點 (15 分

7 2 然後是幾點 15 分 有時候人們用四位數字表示乙個時間,比如1106表示11點零6分。現在,你的程式要根據起始時間和流逝的時間計算出終止時間。讀入兩個數字,第乙個數字以這樣的四位數字表示當前時間,第二個數字表示分鐘數,計算當前時間經過那麼多分鐘後是幾點,結果也表示為四位數字。當小時為個位數時...