第五週專案3:時間類(1)
阿新 • • 發佈:2019-02-19
問題及程式碼:
/* *copyright(c)2016,煙臺大學計算機與控制工程學院 *All rights reserved. *檔名稱:test.cpp *作者:崔青青 *完成日期:2016年3月26日 *問題描述:在原基礎上設定成員函式 *輸入: *程式輸出: */ #include <iostream> using namespace std; class time { public: void set_time(); void show_time(); int add_a_sec(); int add_a_minute(); int add_a_hour(); private: bool is_time(int h,int m,int s); int hour,minute,sec; }; void time::set_time() { char c1,c2; cout<<"請輸入時間:"; while(1) { cin>>hour>>c1>>minute>>c2>>sec; if(c1!=':'||c2!=':') cout<<"格式不正確重輸"; else if(!is_time(hour,minute,sec)) cout<<"時間非法,請重新輸入"<<endl; else break; } } void time::show_time() { cout<<hour<<':'<<minute<<':'<<sec<<endl; } bool time::is_time(int h,int m,int s) { if(h<0||h>24||m<0||m>60||s<0||s>60) return false; return true; } int time::add_a_sec() { sec=sec+1; if(sec>60) { minute=minute+1; sec=sec-60; if(minute>60) { hour=hour+1; minute=minute-60; } } } int time::add_a_minute() { minute+=1; if(minute>60) { hour=hour+1; minute=minute-60; } } int time::add_a_hour() { hour=hour+1; if(hour>24) cout<<"wrong"; } int main() { time t1; t1.set_time(); t1.show_time(); t1.add_a_sec(); t1.add_a_minute(); t1.add_a_hour(); t1.show_time(); return 0; }
執行結果:
知識點總結:
成員函式的定義和時間的有效性。
學習心得:
注意時間可能無意義。