Advertisement
Guest User

Untitled

a guest
Mar 25th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.48 KB | None | 0 0
  1. #include<iostream>
  2. #include<string>
  3. using namespace std;
  4.  
  5. class Date
  6. {
  7. private:
  8. int month, day, year;
  9. string names[12];
  10.  
  11. public:
  12. void printDate1()
  13. {
  14. cout << month << "/" << day << "/" << year << endl;
  15. }
  16.  
  17. void printDate2()
  18. {
  19. cout << names[month - 1] << " " << day << ", " << year << endl;
  20. }
  21.  
  22. void setMonth(int);
  23. void setDay(int);
  24. void setYear(int);
  25. void setNames();
  26.  
  27. int getMonth() const;
  28. int getDay() const;
  29. int getYear() const;
  30. };
  31.  
  32. void Date::setMonth(int m)
  33. {
  34. while (m < 1 || m > 12)
  35. {
  36. cout << m << " is not a valid value for the month, try again..." << endl;
  37. cout << "Please input valid month: ";
  38. cin >> m;
  39. }
  40. month = m;
  41. }
  42. void Date::setDay(int d)
  43. {
  44. int febDays;
  45.  
  46. if (month==1 || month==3 || month==5 || month==7 || month==8 || month==10 || month==12)
  47. while (d < 1 || d > 31)
  48. {
  49. cout << d << " is not a valid value for the day, try again..." << endl;
  50. cout << "Please input valid day: ";
  51. cin >> d;
  52. }
  53. else if (month==4||month==6||month==9||month==11)
  54. while (d < 1 || d > 30)
  55. {
  56. cout << d << " is not a valid value for the day, try again..." << endl;
  57. cout << "Please input valid day: ";
  58. cin >> d;
  59. }
  60. else
  61. {
  62. if (year % 100 == 0 && year % 400)
  63. febDays = 29;
  64. else if (year % 100 != 0 && year % 4 == 0)
  65. febDays = 29;
  66. else
  67. febDays = 28;
  68. while (d < 1 || d > febDays)
  69. {
  70. cout << d << " is not a valid value for the day, try again..." << endl;
  71. cout << "Please input valid day: ";
  72. cin >> d;
  73. }
  74. }
  75. day = d;
  76. }
  77. void Date::setYear(int y)
  78. {
  79. while (y < 0)
  80. {
  81. cout << y << " is not a valid value for the year, try again..." << endl;
  82. cout << "Please input valid year: ";
  83. cin >> y;
  84. }
  85. year = y;
  86. }
  87.  
  88. void Date::setNames()
  89. {
  90. names[0] = "January";
  91. names[1] = "Febuary";
  92. names[2] = "March";
  93. names[3] = "April";
  94. names[4] = "May";
  95. names[5] = "June";
  96. names[6] = "July";
  97. names[7] = "August";
  98. names[8] = "September";
  99. names[9] = "October";
  100. names[10] = "November";
  101. names[11] = "December";
  102. }
  103.  
  104. int Date::getMonth() const
  105. {
  106. return month;
  107. }
  108.  
  109. int Date::getDay() const
  110. {
  111. return day;
  112. }
  113.  
  114. int Date::getYear() const
  115. {
  116. return year;
  117. }
  118.  
  119. int main()
  120. {
  121. Date date;
  122. int month, day, year;
  123. char again;
  124. string names;
  125.  
  126. do
  127. {
  128. cout << "Please input month, day, and year: ";
  129. cin >> month >> day >> year;
  130.  
  131. date.setYear(year);
  132. date.setMonth(month);
  133. date.setDay(day);
  134. date.setNames();
  135.  
  136. //printDate1 and printDate2
  137. date.printDate1();
  138. date.printDate2();
  139.  
  140. cout << "Again? (y/n): ";
  141. cin >> again;
  142.  
  143. } while (tolower(again) == 'y');
  144. cout << "Goodbye!";
  145.  
  146. return 0;
  147. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement