From 9dabe731bd4ee35960d052317041b44f4d97db3a Mon Sep 17 00:00:00 2001 From: ziameraj16 Date: Mon, 8 Nov 2021 20:27:46 +0000 Subject: Java solution for Workdays --- challenge-138/ziameraj16/README.md | 32 +++++++++++------------------ challenge-138/ziameraj16/java/Workdays.java | 22 ++++++++++++++++++++ 2 files changed, 34 insertions(+), 20 deletions(-) create mode 100644 challenge-138/ziameraj16/java/Workdays.java diff --git a/challenge-138/ziameraj16/README.md b/challenge-138/ziameraj16/README.md index b23c6db907..f6c41db25d 100644 --- a/challenge-138/ziameraj16/README.md +++ b/challenge-138/ziameraj16/README.md @@ -1,31 +1,23 @@ -# Middle 3 digits +# Workdays ## Java Solution To compile the code run ```java -javac MiddleThreeDigits.java +javac Workdays.java ``` To run ```java -java MiddleThreeDigits +java Workdays ``` ### Example ```bash -~/study/github/perlweeklychallenge-club/challenge-135/ziameraj16/java$ javac MiddleThreeDigits.java -~/study/github/perlweeklychallenge-club/challenge-135/ziameraj16/java$ java MiddleThreeDigits -Enter the Number -1234567 -345 -~/study/github/perlweeklychallenge-club/challenge-135/ziameraj16/java$ java MiddleThreeDigits -Enter the Number --123 -123 -~/study/github/perlweeklychallenge-club/challenge-135/ziameraj16/java$ java MiddleThreeDigits -Enter the Number -1 -too short -~/study/github/perlweeklychallenge-club/challenge-135/ziameraj16/java$ java MiddleThreeDigits -Enter the Number -1234 -even number of digits +~/study/github/perlweeklychallenge-club/challenge-138/ziameraj16/java$ javac Workdays.java +~/study/github/perlweeklychallenge-club/challenge-138/ziameraj16/java$ java Workdays +Enter the year +2021 +Number of workdays: 261 +~/study/github/perlweeklychallenge-club/challenge-138/ziameraj16/java$ java Workdays +Enter the year +2020 +Number of workdays: 262 ``` diff --git a/challenge-138/ziameraj16/java/Workdays.java b/challenge-138/ziameraj16/java/Workdays.java new file mode 100644 index 0000000000..0659d1a8eb --- /dev/null +++ b/challenge-138/ziameraj16/java/Workdays.java @@ -0,0 +1,22 @@ +import java.time.DayOfWeek; +import java.time.LocalDate; +import java.util.EnumSet; +import java.util.Scanner; +import java.util.Set; + +public class Workdays { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("Enter the year"); + final int year = scanner.nextInt(); + System.out.println("Number of workdays: " + findNumberOfWorkdays(year)); + } + + private static long findNumberOfWorkdays(int year) { + final LocalDate start = LocalDate.of(year, 1, 1); + final LocalDate end = LocalDate.of(year, 12, 31); + Set weekend = EnumSet.of(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY) ; + return start.datesUntil(end).filter(date -> !weekend.contains(date.getDayOfWeek())).count() + 1; + } +} -- cgit