Guest User

Untitled

a guest
Jul 30th, 2016
158
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.34 KB | None | 0 0
  1. import java.time.LocalDate;
  2. import java.time.format.DateTimeFormatter;
  3. import java.util.Locale;
  4. import java.util.Scanner;
  5.  
  6. public class ex24_CountWorkingDays {
  7.     public static void main(String[] args) {
  8.         Scanner sc = new Scanner(System.in);
  9.         String firstLine = sc.nextLine();
  10.         String secondLine = sc.nextLine();
  11.         int workingDays = 0;
  12.  
  13.         DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd-MM-yyyy");
  14.         LocalDate firstDate = LocalDate.parse(firstLine, formatter);
  15.         LocalDate secondDate = LocalDate.parse(secondLine, formatter);
  16.  
  17.         int days = firstDate.until(secondDate).getDays();
  18.  
  19.         for (int i = 0; i <= days; i++) {
  20.             boolean workday = checkIfHoliday(firstDate);
  21.             if (!workday) {
  22.                 workingDays++;
  23.             }
  24.             firstDate = firstDate.plusDays(1);
  25.         }
  26.         System.out.println(workingDays);
  27.     }
  28.  
  29.     private static boolean checkIfHoliday(LocalDate date) {
  30.         int month = date.getMonth().getValue();
  31.         int day = date.getDayOfMonth();
  32.         int weekDay = date.getDayOfWeek().getValue();
  33.  
  34.         boolean e1 = date.getDayOfMonth() == 1 && date.getMonth().getValue() == 1;
  35.         boolean e2 = date.getDayOfMonth() == 3 && date.getMonth().getValue() == 3;
  36.         boolean e3 = date.getDayOfMonth() == 1 && date.getMonth().getValue() == 5;
  37.         boolean e4 = date.getDayOfMonth() == 6 && date.getMonth().getValue() == 5;
  38.         boolean e5 = date.getDayOfMonth() == 24 && date.getMonth().getValue() == 5;
  39.         boolean e6 = date.getDayOfMonth() == 6 && date.getMonth().getValue() == 9;
  40.         boolean e7 = date.getDayOfMonth() == 22 && date.getMonth().getValue() == 9;
  41.         boolean e8 = date.getDayOfMonth() == 1 && date.getMonth().getValue() == 11;
  42.         boolean e9 = date.getDayOfMonth() == 24 && date.getMonth().getValue() == 12;
  43.         boolean e10 = date.getDayOfMonth() == 25 && date.getMonth().getValue() == 12;
  44.         boolean e11 = date.getDayOfMonth() == 26 && date.getMonth().getValue() == 12;
  45.         boolean e12 = date.getDayOfWeek().getValue() == 6;
  46.         boolean e13 = date.getDayOfWeek().getValue() == 7;
  47.  
  48.  
  49.         if ((date.getDayOfMonth() == 1 && date.getMonth().getValue() == 1) ||
  50.                 (date.getDayOfMonth() == 3 && date.getMonth().getValue() == 3) ||
  51.                 (date.getDayOfMonth() == 1 && date.getMonth().getValue() == 5) ||
  52.                 (date.getDayOfMonth() == 6 && date.getMonth().getValue() == 5) ||
  53.                 (date.getDayOfMonth() == 24 && date.getMonth().getValue() == 5) ||
  54.                 (date.getDayOfMonth() == 6 && date.getMonth().getValue() == 9) ||
  55.                 (date.getDayOfMonth() == 22 && date.getMonth().getValue() == 9) ||
  56.                 (date.getDayOfMonth() == 1 && date.getMonth().getValue() == 11) ||
  57.                 (date.getDayOfMonth() == 24 && date.getMonth().getValue() == 12) ||
  58.                 (date.getDayOfMonth() == 25 && date.getMonth().getValue() == 12) ||
  59.                 (date.getDayOfMonth() == 26 && date.getMonth().getValue() == 12)
  60.                 ) {
  61.             return true;
  62.         } else if (
  63.                 (date.getDayOfWeek().getValue() == 6) ||
  64.                         (date.getDayOfWeek().getValue() == 7)
  65.                 ) {
  66.             return true;
  67.         }
  68.         return false;
  69.     }
  70.  
  71.  
  72. }
Add Comment
Please, Sign In to add comment