Advertisement
thinhckhcmus

OPP-NgayThangNam(Nam Nhuan,Ngay Tiep Theo)

Sep 5th, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. **<<<<<<<<<<<<<<NgayThangNam.H>>>>>>>>>>>>>**
  2. #pragma once
  3. class NgayThangNam
  4. {
  5. private:
  6. int Ngay;
  7. int Thang;
  8. int Nam;
  9. public:
  10. void nhap();
  11. void xuat();
  12. bool tinhnamnhuan();
  13. int tinhsongaytrongthang();
  14. void tinhngaytieptheo();
  15. };
  16. **<<<<<<<<<<<<<<<NgayThangNam.cpp>>>>>>>>>>>>>>>**
  17. #include "NgayThangNam.h"
  18. #include <iostream>
  19. using namespace std;
  20. bool NgayThangNam::tinhnamnhuan()
  21. {
  22. if ((Nam % 4 == 0 && Nam % 100 != 0) || Nam % 400 == 0)
  23. {
  24. return true;
  25. }
  26. else
  27. return false;
  28. }
  29. void NgayThangNam::nhap()
  30. {
  31. do
  32. {
  33. cout << "Nhap Nam: " << endl;
  34. cin >> Nam;
  35. if (Nam < 1)
  36. {
  37. cout << "sai nam, moi nhap lai" << endl;
  38. }
  39. } while (Nam < 1);
  40. cout << "Nhap Thang: " << endl;
  41. do
  42. {
  43. cin >> Thang;
  44. if (Thang < 1 || Thang>12)
  45. {
  46. cout << "nhap sai thang,xin moi nhap lai" << endl;
  47. }
  48. } while (Thang < 1 || Thang>12);
  49. cout << "nhap ngay: " << endl;
  50. switch (Thang)
  51. {
  52. case 1:
  53. case 3:
  54. case 5:
  55. case 7:
  56. case 8:
  57. case 10:
  58. case 12:
  59. do
  60. {
  61. cin >> Ngay;
  62. if (Ngay < 1 || Ngay>31)
  63. {
  64. cout << "Nhap Sai Ngay, Xin Moi Nhap Lai: " << endl;
  65. }
  66. } while (Ngay < 1 || Ngay>31);
  67. break;
  68. case 4:
  69. case 6:
  70. case 9:
  71. case 11:
  72. do
  73. {
  74. cin >> Ngay;
  75. if (Ngay < 1 || Ngay>30)
  76. {
  77. cout << "Nhap Sai Ngay, Xin Moi Nhap Lai: " << endl;
  78. }
  79. } while (Ngay < 1 || Ngay>30);
  80. break;
  81. case 2:
  82.  
  83. if (tinhnamnhuan() == true)
  84. {
  85. do
  86. {
  87. cin >> Ngay;
  88. if (Ngay < 1 || Ngay>29)
  89. {
  90. cout << "Nhap Sai Ngay, Xin Moi Nhap Lai:" << endl;
  91. }
  92. } while (Ngay < 1 || Ngay>29);
  93. }
  94. else
  95. {
  96. do
  97. {
  98. cin >> Ngay;
  99. if (Ngay < 1 || Ngay>28)
  100. {
  101. cout << "Nhap Sai Ngay, Xin Moi Nhap Lai: " << endl;
  102. }
  103. } while (Ngay < 1 || Ngay>28);
  104. }
  105. break;
  106. default:
  107. {
  108. cout << "Nhap Ngay,Thang,Nam Sai... Xin Moi Nhap Lai" << endl;
  109. }
  110. break;
  111.  
  112. }
  113.  
  114. }
  115. int NgayThangNam::tinhsongaytrongthang()
  116. {
  117.  
  118. int songay;
  119.  
  120. switch (Thang)
  121. {
  122. case 1:
  123. case 3:
  124. case 5:
  125. case 7:
  126. case 8:
  127. case 10:
  128. case 12:
  129. songay = 31;
  130. break;
  131. case 4:
  132. case 6:
  133. case 9:
  134. case 11:
  135. songay = 30;
  136. break;
  137. case 2:
  138. if (tinhnamnhuan()==true)
  139. {
  140. songay = 29;
  141. }
  142. else
  143. {
  144. songay = 28;
  145. }
  146. break;
  147. }
  148.  
  149. return songay;
  150. }
  151. void NgayThangNam::tinhngaytieptheo()
  152. {
  153. Ngay++;
  154. if (Ngay > tinhsongaytrongthang())// ngày sẽ so sánh với các ngày trong tháng nếu lớn hơn thì mặc định ngày bằng 1 ,và tăng tháng lên
  155. {
  156. Ngay = 1;
  157. Thang++;
  158. if (Thang > 12)// nếu lớn hơn tháng 12 thì mặc định tháng bằng 1 và tăng năm lên
  159. {
  160. Thang = 1;
  161. Nam++;
  162. }
  163. }
  164. }
  165. void NgayThangNam::xuat()
  166. {
  167. cout << "Ngay: " << Ngay << " Thang: " << Thang << " Nam: " << Nam << endl;
  168. }
  169. **<<<<<<<<<<<<<<<main.cpp>>>>>>>>>>>>>*
  170. #include "NgayThangNam.h"
  171. #include <iostream>
  172. using namespace std;
  173. void main()
  174. {
  175. NgayThangNam a;
  176. a.nhap();
  177. a.tinhnamnhuan();
  178. a.tinhsongaytrongthang();
  179. a.tinhngaytieptheo();
  180. a.xuat();
  181. system("pause");
  182. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement