时间相加

Posted cwy545

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了时间相加相关的知识,希望对你有一定的参考价值。

设计一个时间类,用来保存时、分、秒等私有数据成员,通过重载操作符“+”实现2个时间的相加。要求: (1)小时的时间范围限制在大于等于0;(2)分的时间范围为0~59分;(3)秒的时间范围为0~59秒。

#include <iostream>
using namespace std;
class Time {
private:
 int hours,minutes, seconds;
public:
 Time(int h=0, int m=0, int s=0);
 Time operator + (Time &);
 void DispTime();
};

/* 请在这里填写答案 */

int main() {
Time tm1(8,75,50),tm2(0,6,16), tm3;
tm3=tm1+tm2;
tm3.DispTime();
return 0;
}

输出:

在这里给出相应的输出。例如:

9h:22m:6s
 

正确代码:

void Time::DispTime(){
     cout << hours << "h:" << minutes << "m:" << seconds << "s";
 }
Time::Time(int h,int m,int s){
    hours = h;
    minutes = m;
    seconds = s;

}
Time Time::operator+(Time &op2){
    int temp1=0;
    Time temp;
    temp.seconds = this->seconds + op2.seconds;
    if(temp.seconds>=60){
        temp.seconds %= 60;
        temp1 = 1;
        
    }
    temp.minutes = this->minutes + op2.minutes+temp1;
    temp1 = 0;
    if(temp.minutes>=60){
        temp.minutes %= 60;
        temp1 = 1;
        
    }
    temp.hours = this->hours + op2.hours+temp1;
    if(temp.hours>=24){
        temp.hours %= 24;
        
    }
    return temp;
}
  

以上是关于时间相加的主要内容,如果未能解决你的问题,请参考以下文章

PHP时间相加

超级有用的9个PHP代码片段

将两个数字相乘然后相加

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

如何测量代码片段的调用次数和经过时间

关于代码片段的时间复杂度