From fa823379444fd7721dc545547349a63ee8c811b9 Mon Sep 17 00:00:00 2001 From: Habin Kim Date: Thu, 6 Feb 2025 22:35:35 +0900 Subject: [PATCH 1/5] =?UTF-8?q?docs:=20=EA=B5=AC=ED=98=84=20=EA=B8=B0?= =?UTF-8?q?=EB=8A=A5=20=EB=AA=A9=EB=A1=9D=20=EC=84=A0=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index bd90ef0..3c30c80 100644 --- a/README.md +++ b/README.md @@ -1 +1,10 @@ -# java-calculator-precourse \ No newline at end of file +# java-calculator-precourse + +### 1. 구분자와 양수로 구성된 문자열 입력받기 + +- 기본 구분자 문자열 입력 +- 커스텀 구분자 문자열 입력 + +### 2. 각 숫자의 합 반환 + +### 3. IllegalArgumentException 발생 조건 \ No newline at end of file From aa713cf7bbf0ee26ef5a39f8147a8de5a39ec5db Mon Sep 17 00:00:00 2001 From: Habin Kim Date: Thu, 6 Feb 2025 22:51:23 +0900 Subject: [PATCH 2/5] =?UTF-8?q?feat:=20=EB=AC=B8=EC=9E=90=EC=97=B4=20?= =?UTF-8?q?=EC=9E=85=EB=A0=A5=EB=B0=9B=EA=B8=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/calculator/Application.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/calculator/Application.java b/src/main/java/calculator/Application.java index 573580f..6b4a157 100644 --- a/src/main/java/calculator/Application.java +++ b/src/main/java/calculator/Application.java @@ -1,7 +1,14 @@ package calculator; +import java.util.Scanner; + public class Application { public static void main(String[] args) { - // TODO: 프로그램 구현 + Scanner sc = new Scanner(System.in); + String words; + + System.out.println("덧셈할 문자열을 입력해 주세요."); + words = sc.next(); + System.out.println(words); } } From c15cc7e072c89194571aa31b14e3eb2832dc29cb Mon Sep 17 00:00:00 2001 From: Habin Kim Date: Thu, 6 Feb 2025 22:54:20 +0900 Subject: [PATCH 3/5] =?UTF-8?q?docs:=20=EA=B8=B0=EB=8A=A5=20=EA=B5=AC?= =?UTF-8?q?=ED=98=84=20=EA=B5=AC=EC=B2=B4=ED=99=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index 3c30c80..795387b 100644 --- a/README.md +++ b/README.md @@ -7,4 +7,8 @@ ### 2. 각 숫자의 합 반환 +- 커스텀 구분자 존재 여부 확인 +- 문자와 숫자 분리 +- 숫자 더하기 및 출력 + ### 3. IllegalArgumentException 발생 조건 \ No newline at end of file From 1562b7ae3f2f22bf70a7ea8a0e4babc8c080941d Mon Sep 17 00:00:00 2001 From: Habin Kim Date: Fri, 7 Feb 2025 01:04:30 +0900 Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=EC=BB=A4=EC=8A=A4=ED=85=80=20?= =?UTF-8?q?=EA=B5=AC=EB=B6=84=EC=9E=90=20=ED=99=95=EC=9D=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/calculator/Application.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/calculator/Application.java b/src/main/java/calculator/Application.java index 6b4a157..df8be77 100644 --- a/src/main/java/calculator/Application.java +++ b/src/main/java/calculator/Application.java @@ -6,9 +6,16 @@ public class Application { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String words; + char custom; + // 문자열 입력 System.out.println("덧셈할 문자열을 입력해 주세요."); words = sc.next(); - System.out.println(words); + + // 커스텀 구분자 확인 + if(words.charAt(0)=='/' && words.charAt(1)=='/' && words.charAt(3)=='\\' && words.charAt(4)=='n') { + custom = words.charAt(2); + } + } } From 6319d0e5a1aeb790e932453da176be13b286f0a6 Mon Sep 17 00:00:00 2001 From: Habin Kim Date: Fri, 7 Feb 2025 01:24:04 +0900 Subject: [PATCH 5/5] =?UTF-8?q?feat:=20=EC=88=AB=EC=9E=90=EC=99=80=20?= =?UTF-8?q?=EB=AC=B8=EC=9E=90=20=EB=B6=84=EB=A6=AC=20=EB=B0=8F=20=EC=88=AB?= =?UTF-8?q?=EC=B0=A8=EC=9D=98=20=ED=95=A9=20=EC=B6=9C=EB=A0=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/calculator/Application.java | 32 +++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/src/main/java/calculator/Application.java b/src/main/java/calculator/Application.java index df8be77..b56d676 100644 --- a/src/main/java/calculator/Application.java +++ b/src/main/java/calculator/Application.java @@ -1,10 +1,12 @@ package calculator; import java.util.Scanner; +import java.util.Vector; public class Application { public static void main(String[] args) { Scanner sc = new Scanner(System.in); + Vector number = new Vector<>(); String words; char custom; @@ -15,7 +17,37 @@ public static void main(String[] args) { // 커스텀 구분자 확인 if(words.charAt(0)=='/' && words.charAt(1)=='/' && words.charAt(3)=='\\' && words.charAt(4)=='n') { custom = words.charAt(2); + + // 숫자와 문자 분리 + for(int i=5; i= 48 && word <= 57) { + number.add(word-48); + } + else if(word != custom) { + // 예외 처리를 위한 예비출력 + System.out.println("예외"); + } + } + } + else { // 기본 구분자의 숫자와 문자 분리 + for(int i = 0; i < words.length(); i++) { + char word = words.charAt(i); + if(word >= 48 && word <= 57) { + number.add(word-48); + } + else if(word != ',' && word != ':') { + // 예외 처리를 위한 예비출력 + System.out.println("예외"); + } + } } + // 숫자의 합 출력 + int sum = 0; + for(int i = 0; i < number.size(); i++) { + sum += number.get(i); + } + System.out.println(sum); } }