Problem Description
定义一个时钟类(Clock),含三个整形元素(H,M,S)分别代表小时,分钟,秒,构造初始化数据函数,另外,定义一个函数实现两个时钟相加,一个显示函数,输出格式为H:M:S
Input
输入数据有多组,每组两行,第一行输入三个整数:h1(0<=h1<=23),m1(0<=m1<=59),s1(0<=s1<=59),分别代表是一个24小时制的电子钟开始时显示的小时,分钟,秒,第二行仍输入三个整数:h2(h2>=0),m2(0<=m2<=59),s1(0<=s2<=59),代表电子钟经历的时长
Output
每组输出占一行,输出现在电子钟上显示的时间,格式为“小时:分钟:秒”,注意:此题不考虑电子钟显示00~09的形式,用0~9表示即可。
Sample Input
13 30 30 1 10 30 1 0 0 25 0 0
Sample Output
14:41:0 2:0:0
Author
Source
14信管期末复习上机练习A
Recommend
zh
#include<iostream>
using namespace std;class Clock{
private:
int H;
int M;
int S;
public:
Clock(int H,int M,int S)
{
this->H=H;
this->M=M;
this->S=S;
}
void show()
{
cout<<H<<":"<<M<<":"<<S<<endl;
}
void math(int h,int m,int s)
{
if(S+s>=60)
{
S=S+s-60;
M++;
}
else
{
S=S+s;
}
if(M+m>=60)
{
M=M+m-60;
H++;
}
else
{
M=M+m;
}
if(H+h>=24)
{
H=(H+h)%24;
}
else
{
H=H+h;
}
}
};
int main()
{
int a,b,c,A,B,C;
while(cin>>a>>b>>c)
{
cin>>A>>B>>C;
Clock cao(A,B,C);
cao.math(a,b,c);
cao.show();
}
return 0;
}