Write a date class with data members dd, mm, yy. Write a constructor and overload ++ operator, << operator and >> operator.

 



#include<iostream>
using namespace std;
class day
{
    private:
            int month,year;
            int date;
    public:
            day(){};
            void setdata(int , int , int);
            friend istream & operator >>(istream &,day &);
            friend ostream & operator <<(ostream &,day &);
            day operator ++();
            void display();
};

void day :: setdata(int d,int mint y)
{
    date=d;
    month=m;
    year=y;
}

istream& operator >>(istream &in ,day &c)
{
    in>>c.date>>c.month>>c.year;
    return(in);
}

ostream& operator <<(ostream &out ,day &c)
{
    out<<"date = "<<c.date<<"\nmonth = "<<c.month<<"\nyear = "<<c.year;
    return(out);
}

day day :: operator ++()
{
    day tmep;
    tmep.date = ++date;
    if(date == 32)
    {
        date=1;
        month++;
    }
    tmep.month = ++month;
    if(month==13)
    {
        month = 1;
        year++;
    }
    tmep.year = ++year;
    return tmep;
}

void day :: display()
{
    cout<<"after increatement !!! "<<endl;
    cout<<"date = "<<date<<"\nmonth = "<<month<<"\nyear = "<<year;
}

int main()
{
    day da;
    cout<<"enter date , month , year "<<endl;
    cin>> da;
    cout<<da<<endl;
    ++da;
    da.display();

}

output :

enter date , month , year 23 5 2002 date = 23 month = 5 year = 2002 after increatement !!! date = 24 month = 6 year = 2003



Comments

Popular Post

Define a class to represent a Bank Account. Include the following members: Data Members: i. Name of the depositor ii. Account number iii. Type of account iv. Balance amount in the account Member Functions: 1. To Input initial values 2. To deposit an amount 3. To withdraw an amount after checking the balance 4. To display name and balance Also write constructor for this class that takes four arguments. It should also handle type of account as savings by default