yana_neykovaa

Count day of week/ Objects, task1

Oct 20th, 2017
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Globalization;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7.  
  8. class CountWorkingDays
  9. {
  10. static void Main()
  11. {
  12. var startDateText = Console.ReadLine();
  13. var endDateText = Console.ReadLine();
  14.  
  15. var startDate = DateTime.ParseExact(startDateText, "dd-MM-yyyy", CultureInfo.InvariantCulture);
  16. var endDate = DateTime.ParseExact(endDateText, "dd-MM-yyyy", CultureInfo.InvariantCulture);
  17.  
  18. DateTime[] holidays = new DateTime[11];
  19.  
  20. holidays[0] = new DateTime(endDate.Year, 01, 01);
  21. holidays[1] = new DateTime(endDate.Year, 03, 03);
  22. holidays[2] = new DateTime(endDate.Year, 05, 01);
  23. holidays[3] = new DateTime(endDate.Year, 05, 06);
  24. holidays[4] = new DateTime(endDate.Year, 05, 24);
  25. holidays[5] = new DateTime(endDate.Year, 09, 06);
  26. holidays[6] = new DateTime(endDate.Year, 09, 22);
  27. holidays[7] = new DateTime(endDate.Year, 11, 01);
  28. holidays[8] = new DateTime(endDate.Year, 12, 24);
  29. holidays[9] = new DateTime(endDate.Year, 12, 25);
  30. holidays[10] = new DateTime(endDate.Year, 12, 26);
  31.  
  32. int workingDayCounter = ((endDate - startDate).Days)+1;
  33.  
  34. for (var currentDate = startDate; currentDate <= endDate; currentDate = currentDate.AddDays(1))
  35. {
  36. var day = currentDate.DayOfWeek;
  37. if (holidays.Contains(currentDate) || day.Equals(DayOfWeek.Saturday) || day.Equals(DayOfWeek.Sunday))
  38. {
  39. workingDayCounter--;
  40. }
  41. }
  42.  
  43. Console.WriteLine(workingDayCounter);
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment