修改tdate.cpp
This commit is contained in:
parent
58bc9a220e
commit
31f507b004
|
@ -0,0 +1,87 @@
|
|||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class Tdate
|
||||
{
|
||||
public:
|
||||
Tdate ( int setDay,int setMouth,int setYear ) //构造函数没有返回类型,一个类可以由多个构造函数
|
||||
{
|
||||
set ( setDay,setMouth,setYear );
|
||||
}
|
||||
void set ( int setDay,int setMouth,int setYear )
|
||||
{
|
||||
day=setDay;
|
||||
mouth=setMouth;
|
||||
year=setYear;
|
||||
}
|
||||
int isLeapYear()
|
||||
{
|
||||
return ( ( year%4==0&&year%100!=0 ) || ( year%400==0 ) );
|
||||
}
|
||||
void printYear()
|
||||
{
|
||||
cout<<year<<"/"<<mouth<<"/"<<day<<endl;
|
||||
}
|
||||
void nextDay()
|
||||
{
|
||||
if ( mouth==2 ) {
|
||||
if ( isLeapYear() ) {
|
||||
if ( day+1>29 ) {
|
||||
mouth++;
|
||||
day=1;
|
||||
} else {
|
||||
day++;
|
||||
}
|
||||
} else {
|
||||
if ( day+1>28 ) {
|
||||
mouth++;
|
||||
day=1;
|
||||
} else {
|
||||
day++;
|
||||
}
|
||||
}
|
||||
} else if ( isBigMouth ( mouth ) ) {
|
||||
if ( day+1>31 ) {
|
||||
mouth++;
|
||||
day=1;
|
||||
} else {
|
||||
day++;
|
||||
}
|
||||
} else if ( mouth==12 ) {
|
||||
if ( day+1>31 ) {
|
||||
year++;
|
||||
mouth=1;
|
||||
day=1;
|
||||
} else {
|
||||
day++;
|
||||
}
|
||||
} else {
|
||||
if ( day+1>20 ) {
|
||||
mouth++;
|
||||
day=1;
|
||||
} else {
|
||||
day++;
|
||||
}
|
||||
}
|
||||
}
|
||||
private:
|
||||
int day,mouth,year;
|
||||
int isBigMouth ( int inMouth )
|
||||
{
|
||||
int bigMouth[7]= {1,3,5,7,8,10};
|
||||
for ( int i=0; i<7; i++ ) {
|
||||
if ( inMouth==bigMouth[i] ) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
Tdate date ( 21,10,2011 );
|
||||
date.printYear();
|
||||
cout<<date.isLeapYear() <<endl;
|
||||
return 0;
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
class Tdate
|
||||
{
|
||||
public:
|
||||
Tdate ( int setDay,int setMouth,int setYear ) //构造函数没有返回类型,一个类可以由多个构造函数
|
||||
{
|
||||
set ( setDay,setMouth,setYear );
|
||||
}
|
||||
void set ( int setDay,int setMouth,int setYear )
|
||||
{
|
||||
day=setDay;
|
||||
mouth=setMouth;
|
||||
year=setYear;
|
||||
}
|
||||
int isLeapYear()
|
||||
{
|
||||
return ( ( year%4==0&&year%100!=0 ) || ( year%400==0 ) );
|
||||
}
|
||||
void printYear()
|
||||
{
|
||||
cout<<year<<"/"<<mouth<<"/"<<day<<endl;
|
||||
}
|
||||
private:
|
||||
int day,mouth,year;
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
Tdate date ( 21,10,2011 );
|
||||
date.printYear();
|
||||
cout<<date.isLeapYear() <<endl;
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue