0% found this document useful (0 votes)
39 views

Assignment - 01 20F-0159 Muhammad Usman: #Include #Include

The document defines a date2021 class that can represent dates and output the day of the week. It includes methods to set date values, get date values, set the date, and print the date. Date calculations are performed by iterating through days to determine the weekday.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

Assignment - 01 20F-0159 Muhammad Usman: #Include #Include

The document defines a date2021 class that can represent dates and output the day of the week. It includes methods to set date values, get date values, set the date, and print the date. Date calculations are performed by iterating through days to determine the weekday.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Assignment_01

20F-0159 Muhammad Usman


#include<iostream>
#include<string>
using namespace std;
string dayNam[7] = {
"Friday","Saturday","Sunday","Monday","Tuesday","Wednesday","Thursday" };
class date2021
{
public:
date2021()
{
d = 1;
m = 1;
cout << "Friday, January 1 ,2021" << endl << endl << endl;
};
date2021(int dd)
{
if (dd > 365)
{
cout << "Error: Day exeeded year.." << endl;
}
else
{
if (dd <= 31)
{
setm(1);
setd(dd);
setmonth("January");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);
if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 31) <= 28)
{
setm(2);
setd(dd - 31);
setmonth("February");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);
if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 59) <= 31)
{
setm(3);
setd(dd - 59);
setmonth("March");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 90) <= 30)
{
setm(4);
setd(dd - 90);
setmonth("April");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 120) <= 31)
{
setm(5);
setd(dd - 120);
setmonth("May");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);
if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 151) <= 30)
{
setm(6);
setd(dd - 151);
setmonth("June");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 181) <= 31)
{
setm(7);
setd(dd - 181);
setmonth("July");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 212) <= 31)
{
setm(8);
setd(dd - 212);
setmonth("August");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 243) <= 30)
{
setm(9);
setd(dd - 243);
setmonth("September");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 273) <= 31)
{
setm(10);
setd(dd - 273);
setmonth("October");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 304) <= 30)
{
setm(11);
setd(dd - 304);
setmonth("November");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if ((dd - 334) <= 31)
{
setm(12);
setd(dd - 334);
setmonth("December");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
}
};
date2021(int mm, int dd)
{
SetDate(mm, dd);
};
void setd(int D)
{
d = D;
};

void setm(int M)
{
m = M;
};
void setmonth(string Mon)
{
month = Mon;
};
void setDN(string dayName)
{
DN = dayName;
};
int getm()
{
return m;
};
int getd()
{
return d;
};
string getmonth()
{
return month;
};
string getdayName()
{
return DN;
};
void SetDate(int dd, int mm);
void Print(date2021 cal);
void PlusDay(int days, int mm, int dd);
~date2021();

private:
int d = 0;
int m = 0;
string month = " ";
string DN = " ";
};

void date2021::SetDate(int mm, int dd)


{
if (mm == 1)
{
setm(1);
setd(dd);
setmonth("January");
int check = 0;
for (int i = 0; i < dd; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 2)
{
setm(2);
setd(dd);
setmonth("February");
int check = 0;
for (int i = 0; i < dd + 31; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 3)
{
setm(3);
setd(dd);
setmonth("March");
int check = 0;
for (int i = 0; i < dd + 59; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 4)
{
setm(4);
setd(dd);
setmonth("April");
int check = 0;
for (int i = 0; i < dd + 90; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 5)
{
setm(5);
setd(dd);
setmonth("May");
int check = 0;
for (int i = 0; i < dd + 120; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 6)
{
setm(6);
setd(dd);
setmonth("June");
int check = 0;
for (int i = 0; i < dd + 151; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 7)
{
setm(7);
setd(dd);
setmonth("July");
int check = 0;
for (int i = 0; i < dd + 181; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 8)
{
setm(8);
setd(dd);
setmonth("August");
int check = 0;
for (int i = 0; i < dd + 212; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 9)
{
setm(9);
setd(dd);
setmonth("September");
int check = 0;
for (int i = 0; i < dd + 243; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 10)
{
setm(10);
setd(dd);
setmonth("October");
int check = 0;
for (int i = 0; i < dd + 273; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 11)
{
setm(11);
setd(dd);
setmonth("November");
int check = 0;
for (int i = 0; i < dd + 304; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
else if (mm == 12)
{
setm(12);
setd(dd);
setmonth("December");
int check = 0;
for (int i = 0; i < dd + 334; i++)
{
setDN(dayNam[check]);

if (check == 6)
{
check = 0;
}
else
{
check++;
}
}
}
};
void date2021::Print(date2021 calc)
{
cout << calc.getdayName() << ", " << calc.getmonth() << " " << calc.getd() << ",
2021";
};
void date2021::PlusDay(int days, int mm, int dd)
{
if (mm > 0 && dd > 0)
{
date2021 cal3(mm, dd);
cout << "The date after " << days << " days of ";
cal3.Print(cal3);
cal3.~date2021();
}
if (mm == 1)
{
dd = dd;
}
else if (mm == 2)
{
dd = dd + 31;
}
else if (mm == 3)
{
dd = dd+59;
}
else if (mm == 4)
{
dd = dd+90;
}
else if (mm == 5)
{
dd = dd+120;
}
else if (mm == 6)
{
dd = dd+151;
}
else if (mm == 7)
{
dd = dd+181;
}
else if (mm == 8)
{
dd = dd+212;
}
else if (mm == 9)
{
dd = dd+243;
}
else if (mm == 10)
{
dd = dd+273;
}
else if (mm == 11)
{
dd = dd+304;
}
else if (mm == 12)
{
dd = dd+334;
}
dd = dd + days;
date2021 cal2(dd);
cout << " is ";
cal2.Print(cal2);
cal2.~date2021();
};
date2021::~date2021()
{

}
int main()
{
date2021 cal;
cout << endl ;
int dy = 0, mm = 0, dd = 0;
cout << "Enter the Month in a year : ";
cin >> mm;
cout << "Enter the date of Month in the Year : ";
cin >> dd;
if ((mm == 1 || mm == 3 || mm == 5 || mm == 7 || mm == 8 || mm == 10 || mm == 11)
&& dd > 31)
{
cout << "Error: Date exeeded Month.." << endl;
}
else if ((mm == 4 || mm == 6 || mm == 8 || mm == 9 || mm == 12) && dd > 30)
{
cout << "Error: Date exeeded Month.." << endl;
}
else if (mm == 2 && dd > 28)
{
cout << "Error: Date exeeded Month.." << endl;
}
else
{
date2021 cal3(mm, dd);
cal3.Print(cal3);
cal3.~date2021();
cout << endl << endl;
}

cout << "Enter the Day in the year : ";


cin >> dy;
date2021 cal2(dy);
cal2.Print(cal2);
cal2.~date2021();
cout << endl << endl;
cout << "\n------------------Performing Days After : --------------------\n" <<
endl;
cout << "Enter the Month in a year : ";
cin >> mm;
cout << "Enter the date of Month in the Year : ";
cin >> dd;
cout << "Enter how many days after today you want to add ? ";
cin >> dy;
cal.PlusDay(dy, mm, dd);
cout << "\n\n";
return 0;
}

You might also like