码迷,mamicode.com
首页 > 编程语言 > 详细

c++学习记录(四)

时间:2020-02-04 14:10:03      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:行操作   color   pre   客户   处理   函数   整数   初始   构造函数   

c++运用类实践

1.编写一个可以显示时,分,秒的时钟类,要求实现以下函数:

·add增加时间。

·set设置时间。

·show查看时间。

·reset将时间设置为0点0分0秒。

·update将时钟增加一秒。

2.展示实践类代码

class clock
{
public:
    clock()
    {
        cout << "尊敬的用户,输入时间时24时60分60秒统一为0时0分0秒" << endl;
        hour = 0;
        min = 0;
        second = 0;
    }

    void add(int h, int m, int s)
    {
        int Ssum = (h + hour) * 3600 + (m + min) * 60 + s + second;
        hour = Ssum / 3600;
        if (hour >= 24) hour = hour - 24;
        min = (Ssum - hour * 3600) / 60;
        second = Ssum - hour * 3600 - min * 60;
        cout << "时间已增加" << endl;
    }

    void set(int h, int m, int s)
    {
        if (h >= 24 || m >= 60 || s >= 60) cout << "输入错误" << endl;
                if(h<0||m<0||s<0) cout << "输入错误" << endl;
        hour = h;
        min = m;
        second = s;
        cout << "时间设置完成" << endl;
    }

    void show()
    {
        cout << "现在时间为: "<< hour<<"时"<< min<<"分"<<second <<"秒"<< endl;
    }

    void reset()
    {
        hour = 0;
        min = 0;
        second = 0;
        cout << "时间已清零" << endl;
    }

    void update()
    {
        second += 1;
        if (second >= 60)
        {
            min += 1;
            second -= 60;
        }
        if (min >= 60)
        {
            hour += 1;
            min -= 60;
        }
        if (hour >= 24)
        {
            hour -= 24;
        }
        cout << "时间已增加一秒" << endl;
    }

3.实践想法说明

(1)这个类是给客户用的,重要信息时分秒应该设置为私有,用户只能通过公有函数进行操作

(2)时、分、秒都应为整数

(3)在对时、分、秒进行增加操作后,判断其是否符合时间规定,进行秒转分、分转时、时化24小时制操作

(4)在用户相应操作完成后,自动给予信息输出提示,操作已完成

4.操作函数说明

(1)clock方法为构造函数,当用户最开始使用类时,初始化时分秒。

(2)add方法指定用户输入的第一个参数是时,第二个参数是分,第三个参数是秒,通过全部数据化为秒相加后,再化为时分秒。

(3)set方法指定用户输入数据的范围,对相应的时分秒进行赋值,达成设置时间操作

(4)show方法将时分秒对应输出

(5)reset方法对时分秒重新赋值为零

(6)update方法先进行秒加一操作,在判断相加之后时分秒是否符合时间规则,进行相应的处理

c++学习记录(四)

标签:行操作   color   pre   客户   处理   函数   整数   初始   构造函数   

原文地址:https://www.cnblogs.com/trainking-star/p/12259101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!