Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2014
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. //Date Problem
  2. //Ryan Hoover
  3. #include <iostream>
  4.  
  5. using namespace std;
  6.  
  7. int GetYear();
  8. int GetDay();
  9. int GetMonth();
  10. bool IsValid(int,int,int);
  11.  
  12. int main()
  13. {
  14. int year, day, month;
  15. cout << "This program will determine whether a date is a valid date or not.\n\n";
  16. year = GetYear();
  17. day = GetDay();
  18. month = GetMonth();
  19. if (IsValid(year,day,month))
  20. { cout << year << " " << day << " " << month << " is a valid date :)\n";
  21. }
  22. else
  23. { cout << year << " " << day << " " << month << " is not a valid date :(\n";
  24. }
  25.  
  26. int stop;
  27. cin >> stop;
  28. return 0;
  29. }
  30.  
  31. int GetYear()
  32. { int year;
  33. do
  34. { cout << "Enter a four digit year: ";
  35. cin >> year;
  36. } while (year < 1000 || year > 9999);
  37. cout << endl;
  38. return year;
  39. }
  40.  
  41. int GetDay()
  42. { int day;
  43. do
  44. { cout << "Enter a day of the month (between 1 and 31): ";
  45. cin >> day;
  46. } while (day < 1 || day > 31);
  47. cout << endl;
  48. return day;
  49. }
  50.  
  51. int GetMonth()
  52. { int month;
  53. do
  54. { cout << "Enter a month (between 1 and 12): ";
  55. cin >> month;
  56. } while (month < 1 || month > 12);
  57. cout << endl;
  58. return month;
  59. }
  60.  
  61. bool IsVaild(int year, int day, int month)
  62. {
  63. bool status = true;
  64. if (year % 4 == 0)
  65. { status = true;
  66. if (month == 6 || month == 4 || month == 9 || month == 11)
  67. { if (day > 31)
  68. { status = false;
  69. }
  70. }
  71. else if (month == 2)
  72. { if (day > 28)
  73. { status = false;
  74. }
  75. }
  76. }
  77. else if (year % 400 == 0)
  78. { status = true;
  79. if (month == 6 || month == 4 || month == 9 || month == 11)
  80. { if (day > 30)
  81. { status = false;
  82. }
  83. }
  84. else if (month == 2)
  85. { if (day > 28)
  86. { status = false;
  87. }
  88. }
  89. }
  90. else if (year % 100 != 0)
  91. { status = false;
  92. }
  93. return status;
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement