Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Date::add_day()
- {
- // if month is of 30 days
- if(m==Month::apr || m==Month::jun || m==Month::sep || m==Month::nov)
- {
- int x,y;
- y=int(dy);
- if(d==30)
- {
- d=1;
- x=int(m);
- m=Month(x+1);
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- else
- {
- d+=1;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- }
- return;
- }
- //----------------------------------------------------------------
- //if month is december
- if(m==Month::dec)
- {
- int x,y;
- y=int(dy);
- if(d==31)
- {
- d=1;
- Date::y+=1;
- m=Month::jan;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- else
- {
- d+=1;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- }
- return;
- }
- //------------------------------------------------------------------
- if(m==Month::jan || m==Month::mar || m==Month::may || m==Month::jul || m==Month::aug || m==Month::oct)
- {
- int x,y;
- y=int(dy);
- if(d==31)
- {
- d=1;
- x=int(m);
- m=Month(x+1);
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- else
- {
- d+=1;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- }
- return;
- }
- //------------------------------------------------------------------
- if(m==Month::feb)
- {
- int x,y;
- y=int(dy);
- if(leapyear(Date::y))
- {
- if(d==29)
- {
- d=1;
- x=int(m);
- m=Month(x+1);
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- else
- {
- d+=1;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- }
- else
- {
- if(d==28)
- {
- d=1;
- x=int(m);
- m=Month(x+1);
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- else
- {
- d+=1;
- if(dy==Day::sunday) dy=Day::monday;
- else dy=Day(y+1);
- return;
- }
- }
- }
- }
- void which_day(Date& dd) // function returns a day on a given date
- {
- static Date d; // default date is set to 1970,1,1 day -thursday
- while(d!=dd)
- {
- d.add_day();
- }
- cout<<d.show_day()<<endl;
- }
Advertisement
Add Comment
Please, Sign In to add comment