新微赢技术网

标题: ●●●●●很基础的类的题目●●●●● [打印本页]

作者: 五龙    时间: 2009-11-3 01:44
标题: ●●●●●很基础的类的题目●●●●●
实现一个时钟类,要求实现以下方法:
class Time
{
private:
int hour;
int minute;
int second;
public:
void settime(int h,int m,int s); //设置时间
void showtime(); //输出时间
void run(); //每调用一次该方法,时间增加一秒
};
Input
在主函数中输入多组数据,每组两行,第一行为时分秒,中间用空格分隔。第二行为运行了多少时间:秒数n。
Output
程序读入输入的时分秒,输出运行了n秒后的时间。格式请根据样例。
Sample Input
0 3 0
4
0 0 0
60
1 2 3
45
5 6 7
12345
Sample Output
0:3:4
1:0:0
0:1:5
8:31:52
作者: ╰☆kiss寵壞    时间: 2009-11-3 01:44
#include<iostream>
using namespace std;
class Time
{
int hour;
int minute;
int second;
public:
void settime(int h,int m,int s); //设置时间
void showtime(){cout<<hour<<":"<<minute<<":"<<second<<endl;} //输出时间
void run(); //每调用一次该方法,时间增加一秒
};
void Time::settime(int h,int m,int s)
{
hour=h;minute=m;second=s;
m+=s/60;s%=60;
h+=m/60;h%=24;
m%=60;
}
void Time::run()
{
assert(second>=0&&second<=60);
if(second<59)
{
second+=1;
}
else if(second==59){minute+=1;second=0;}
else {minute+=1;second=1;}
}
int main()
{
cout<<"How many array you want to input: ";int arrNum;
cin>>arrNum;
Time time[arrNum];
for (int i=0;i<arrNum;i++)
{
cout<<"The "<<i+1<<"th array!\n";
int h,m,s;
cin>>h>>m>>s;time[i].settime(h,m,s);
int r;
cin>>r;
for (int j=0;j<r;j++)
{
time[i].run();
}
}
for (int k=0;k<arrNum;k++)
{
time[k].showtime();
}
system("pause");
return 0;
}
作者: 一切还好    时间: 2009-11-3 01:44
看看我这个行不?希望大家指教我一下 我是个菜鸟
#include<iostream.h>
class time
{
int hour,minute,second;
public:
time(int h,int m,int s)
{
hour=h;minute=m;second=s;
}
void run()
{
second=second+1;
if(hour>=0&&hour<=24&&minute>=0&&minute<59&&second==60)
{
second=0;
minute=minute+1;
}
else if(hour>=0&&hour<23&&minute==59&&second==60)
{
second=0;
minute=0;
hour=hour+1;
}
else if(hour==23&&minute==59&&second==60)
{
second=0;
minute=0;
hour=0;
}
}
void runto(int n)
{
for(int i=0;i<n;i++)
{
run();
}
}
void print()
{
cout<<hour<<":"<<minute<<":"<<second<<endl;
}
};
void main()
{
int m;
time a(23,59,59);
cout<<"intput the m:"<<endl;
cin>>m;
a.runto(m);
a.print();
}




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2