Advertisement
Artychenal

Untitled

Oct 3rd, 2023
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. int isLeapYear(int year) {
  4. if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
  5. return 1; // Високосний рік
  6. } else {
  7. return 0; // Невисокосний рік
  8. }
  9. }
  10.  
  11. int main() {
  12. int day, month, year;
  13. printf("Введіть дату у форматі dd.mm.yyyy: ");
  14. scanf("%d.%d.%d", &day, &month, &year);
  15.  
  16. // Обчислюємо поправку n
  17. int n = 0;
  18. if (month <= 2) {
  19. if (isLeapYear(year)) {
  20. n = 1;
  21. } else {
  22. n = 2;
  23. }
  24. }
  25.  
  26. // Обчислюємо день тижня за формулою
  27. day = (int)((365.25 * year) + (30.56 * month) + day + n) % 7;
  28.  
  29. // Виводимо день тижня прописом
  30. switch (day) {
  31. case 0:
  32. printf("Понеділок (Monday)\n");
  33. break;
  34. case 1:
  35. printf("Вівторок (Tuesday)\n");
  36. break;
  37. case 2:
  38. printf("Середа (Wednesday)\n");
  39. break;
  40. case 3:
  41. printf("Четвер (Thursday)\n");
  42. break;
  43. case 4:
  44. printf("П'ятниця (Friday)\n");
  45. break;
  46. case 5:
  47. printf("Субота (Saturday)\n");
  48. break;
  49. case 6:
  50. printf("Неділя (Sunday)\n");
  51. break;
  52. default:
  53. printf("Некоректна дата\n");
  54. break;
  55. }
  56.  
  57. return 0;
  58. }
  59.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement