|
Response Details:
please rate - thanks
hope this gets you started
#include <iostream>
using namespace std;
bool validdate(int &,int,int);
int leap(int);
class Date
{
private: int month,day,year;
public:
Date(int m, int d, int y)
{
month=m;
day=d;
year=y;}
void Date::printdate()
{
cout<<month<<"/"<<day<<"/"<<year<<endl;
}
int Date::getmonth()
{
return month;
}
int getday()
{
return day;
}
int Date::getyear()
{
return year;
}
void Date::setmonth(int m)
{month=m;}
void Date::setday(int d)
{day=d;
}
void Date::setyear(int y)
{year=y;
}
};
int main()
{
int m,d,y,v;
cout<<"Enter month: ";
cin>>m;
cout<<"Enter day: ";
cin>>d;
cout<<"Enter year: ";
cin>>y;
cout<<endl;
v=validdate(d,m,y);
if(!v)
cout<<"invalid date, day "<<d <<" used\n";
Date dd(m,d,y);
dd.printdate();
d=dd.getday();
cout<<"day="<<d<<endl;
system("pause");
return 0;
}
bool validdate(int &day, int month,int year)
{int l;
if (day <= 0)
return false;
switch(month)
{
case 1 :
case 3 :
case 5 :
case 7 :
case 8 :
case 10:
case 12: if (day > 31)
{day=31;
return false;
}
else
return true;
case 4 :
case 6 :
case 9 :
case 11: if (day > 31)
{day=31;
return false;
}
else
return true;
case 2 : l=leap(year);
if (day > 28+l)
{day=28+l;
return false;
}
else
return true;
}
}
int leap(int year)
{int leapcode=0;
if(year%4==0)
{if(year%100!=0)
leapcode=1;
else
if(year%400==0)
leapcode=1;
}
return leapcode;
}
|