From 80caabcc30b72625781dd7bd51786079a7c66888 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8B=E1=85=B5=E1=84=89=E1=85=B3=E1=86=BC=E1=84=85?= =?UTF-8?q?=E1=85=A7=E1=86=AF?= Date: Wed, 18 Jan 2023 23:33:21 +0900 Subject: [PATCH 1/4] =?UTF-8?q?add:=20=20=EB=AC=B8=EC=A0=9C=ED=92=80?= =?UTF-8?q?=EC=9D=B4=20=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/LEESEUNGRYEOL/report1/Report1_1 | 3 ++ src/LEESEUNGRYEOL/report1/Report1_2 | 9 ++++++ src/LEESEUNGRYEOL/report1/Report1_3.java | 28 +++++++++++++++++++ src/LEESEUNGRYEOL/report2/Report2_1 | 3 ++ src/LEESEUNGRYEOL/report2/Report2_2 | 13 +++++++++ src/LEESEUNGRYEOL/report2/Report2_3.java | 18 ++++++++++++ src/LEESEUNGRYEOL/report2/Report2_4.java | 22 +++++++++++++++ src/LEESEUNGRYEOL/report2/Report2_5.java | 18 ++++++++++++ src/LEESEUNGRYEOL/report2/Report2_6.java | 28 +++++++++++++++++++ src/studentenglishname/report1/Report1_1 | 3 -- src/studentenglishname/report1/Report1_2 | 3 -- src/studentenglishname/report1/Report1_3.java | 17 ----------- src/studentenglishname/report2/Report2_2.java | 7 ----- 13 files changed, 142 insertions(+), 30 deletions(-) create mode 100644 src/LEESEUNGRYEOL/report1/Report1_1 create mode 100644 src/LEESEUNGRYEOL/report1/Report1_2 create mode 100644 src/LEESEUNGRYEOL/report1/Report1_3.java create mode 100644 src/LEESEUNGRYEOL/report2/Report2_1 create mode 100644 src/LEESEUNGRYEOL/report2/Report2_2 create mode 100644 src/LEESEUNGRYEOL/report2/Report2_3.java create mode 100644 src/LEESEUNGRYEOL/report2/Report2_4.java create mode 100644 src/LEESEUNGRYEOL/report2/Report2_5.java create mode 100644 src/LEESEUNGRYEOL/report2/Report2_6.java delete mode 100644 src/studentenglishname/report1/Report1_1 delete mode 100644 src/studentenglishname/report1/Report1_2 delete mode 100644 src/studentenglishname/report1/Report1_3.java delete mode 100644 src/studentenglishname/report2/Report2_2.java diff --git a/src/LEESEUNGRYEOL/report1/Report1_1 b/src/LEESEUNGRYEOL/report1/Report1_1 new file mode 100644 index 0000000..890cc3b --- /dev/null +++ b/src/LEESEUNGRYEOL/report1/Report1_1 @@ -0,0 +1,3 @@ +2-4번 문제 + +정답 : 1,2,3,4,5 diff --git a/src/LEESEUNGRYEOL/report1/Report1_2 b/src/LEESEUNGRYEOL/report1/Report1_2 new file mode 100644 index 0000000..7ea19d0 --- /dev/null +++ b/src/LEESEUNGRYEOL/report1/Report1_2 @@ -0,0 +1,9 @@ +2-7번 번 문제 + +정답 : 1: 12 + 2: true + 3: 131 + 4: 51 + 5: 99 + 6: Java + 7: 오류 \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report1/Report1_3.java b/src/LEESEUNGRYEOL/report1/Report1_3.java new file mode 100644 index 0000000..030ce1d --- /dev/null +++ b/src/LEESEUNGRYEOL/report1/Report1_3.java @@ -0,0 +1,28 @@ +package LEESEUNGRYEOL.report1; +// 2-8번 문제 +public class Report1_3 { + public static void main(String[] args) { + AddClass addClass = new AddClass(); + addClass.test(); + } +} + +// 필요하다면 클래스 추가 +class AddClass { + void test() { + int x = 1; + int y = 2; + int z = 3; + + int tmp; + + tmp = x; + x = y; + y = z; + z = tmp; + + System.out.println("x=" + x); + System.out.println("y=" + y); + System.out.println("z=" + z); + } +} diff --git a/src/LEESEUNGRYEOL/report2/Report2_1 b/src/LEESEUNGRYEOL/report2/Report2_1 new file mode 100644 index 0000000..8339568 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_1 @@ -0,0 +1,3 @@ +3-1번 문제 + +정답 : 4,5 \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report2/Report2_2 b/src/LEESEUNGRYEOL/report2/Report2_2 new file mode 100644 index 0000000..b85ede3 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_2 @@ -0,0 +1,13 @@ +3-2번 문제 + +정답: +true (y가 0보다 크기 때문에) +13 ( 15-2 = 13 ) +5 ( 3 + 2 = 5 ) +false ( +2 (c의 아스키코드는 68 - 65 = 3) +5 ('5'의 아스키코드 53에서 '0'의 아스키코드 48을 빼면 53 - 48 = 5) +66 (65 + 1 = 66 => 'B'의 아스키코드) +B (66 => 'B'의 아스키코드) +B (참조 후 연산이므로 아직,66 =>'B'의 아스키코드) +C (c++ 로 참조 된 이후에 67이 되었으므로 67 => 'C'의 아스키 코드) \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report2/Report2_3.java b/src/LEESEUNGRYEOL/report2/Report2_3.java new file mode 100644 index 0000000..267f2b9 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_3.java @@ -0,0 +1,18 @@ +package LEESEUNGRYEOL.report2; +// 3-3번 문제 +public class Report2_3 { + public static void main(String[] args) { + Find_num findNum = new Find_num(); + int num = 456; + findNum.result(num); + } +} + +class Find_num{ + void result(int num) + { + int remainder = num % 100; + int result = num - remainder; + System.out.println(result); + } +} diff --git a/src/LEESEUNGRYEOL/report2/Report2_4.java b/src/LEESEUNGRYEOL/report2/Report2_4.java new file mode 100644 index 0000000..d564c42 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_4.java @@ -0,0 +1,22 @@ +package LEESEUNGRYEOL.report2; +// 3-4번 문제 +public class Report2_4 { + public static void main(String[] args){ + + int numOfApples = 1432; // 사과의 개수 + int sizeOfBucket = 10; // 바구니의 크기(바구니에 담을 수 있는 사과의 개수) + Find_bucket find_bucket = new Find_bucket(); + find_bucket.result(numOfApples,sizeOfBucket); + + } +} + +class Find_bucket{ + void result(int a, int b) + { + int numOfBucket = (a/b + 1); // 모든 사과를 담는데 필요한 바구니의 수 + + System.out.println("필요한 바구니의 수 :"+numOfBucket); + } + +} \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report2/Report2_5.java b/src/LEESEUNGRYEOL/report2/Report2_5.java new file mode 100644 index 0000000..ea76811 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_5.java @@ -0,0 +1,18 @@ +package LEESEUNGRYEOL.report2; +// 3-5번 +public class Report2_5 { + public static void main(String[] args) { + int num = 10; + Num_Category num_category = new Num_Category(); + num_category.print_category(num); + } +} + +class Num_Category{ + void print_category(int num) + { + String result; + result = num > 0 ? "양수" : (num == 0 ? "0" : "음수"); + System.out.println(result); + } +} \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report2/Report2_6.java b/src/LEESEUNGRYEOL/report2/Report2_6.java new file mode 100644 index 0000000..6bbf1a3 --- /dev/null +++ b/src/LEESEUNGRYEOL/report2/Report2_6.java @@ -0,0 +1,28 @@ +package LEESEUNGRYEOL.report2; +// 3-6번 문제 +public class Report2_6 { + public static void main(String[] args) { + int fahrenheit = 100; + Calculate_cel calculate_cel = new Calculate_cel(); + calculate_cel.cal(fahrenheit); + } +} +class Calculate_cel{ + void cal(int fahrenheit) + { + float celcius; + celcius = (float) 5/9 * (fahrenheit -32); + int a = (int) (celcius * 1000); + int b = a % 10; + if (b >= 5) + { + a += 10; + } + a = a/10; + + celcius = (float) (a * 0.01); + + System.out.println("Fahrenheit:" + fahrenheit); + System.out.println("Celcius:" + celcius); + } +} \ No newline at end of file diff --git a/src/studentenglishname/report1/Report1_1 b/src/studentenglishname/report1/Report1_1 deleted file mode 100644 index 3f37658..0000000 --- a/src/studentenglishname/report1/Report1_1 +++ /dev/null @@ -1,3 +0,0 @@ -2-4번 문제 - -정답 : diff --git a/src/studentenglishname/report1/Report1_2 b/src/studentenglishname/report1/Report1_2 deleted file mode 100644 index f4e5811..0000000 --- a/src/studentenglishname/report1/Report1_2 +++ /dev/null @@ -1,3 +0,0 @@ -2-7번 번 문제 - -정답 : \ No newline at end of file diff --git a/src/studentenglishname/report1/Report1_3.java b/src/studentenglishname/report1/Report1_3.java deleted file mode 100644 index 5b75b9c..0000000 --- a/src/studentenglishname/report1/Report1_3.java +++ /dev/null @@ -1,17 +0,0 @@ -package studentenglishname.report1; -// 2-8 번 문제 <- 이렇게 문제 번호 작성 필수 -public class Report1_3 { - public static void main(String[] args) { - // 정답 작성 - // Ex) - AddClass addClass = new AddClass(); - addClass.test(); - } -} - -// 필요하다면 클래스 추가 -class AddClass { - void test() { - System.out.println("AddClass.test"); - } -} diff --git a/src/studentenglishname/report2/Report2_2.java b/src/studentenglishname/report2/Report2_2.java deleted file mode 100644 index 71dbb48..0000000 --- a/src/studentenglishname/report2/Report2_2.java +++ /dev/null @@ -1,7 +0,0 @@ -package studentenglishname.report2; -// 3-2번 문제 -public class Report2_2 { - public static void main(String[] args) { - - } -} From 1f670f9f5ab1724b20e2625782a30c6385b67243 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8B=E1=85=B5=E1=84=89=E1=85=B3=E1=86=BC=E1=84=85?= =?UTF-8?q?=E1=85=A7=E1=86=AF?= Date: Thu, 19 Jan 2023 22:46:35 +0900 Subject: [PATCH 2/4] =?UTF-8?q?Add:=20idea=20file=20=EC=82=AD=EC=A0=9C=20?= =?UTF-8?q?=EB=B0=8F=20Report=203,4=20=EC=A0=9C=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hanghae-java-study-12.iml | 11 ++++++ src/LEESEUNGRYEOL/report2/Report2_4.java | 12 +++++-- src/LEESEUNGRYEOL/report2/Report2_6.java | 10 +++++- src/LEESEUNGRYEOL/report3/Report3_1 | 20 +++++++++++ src/LEESEUNGRYEOL/report3/Report3_10.java | 32 ++++++++++++++++++ src/LEESEUNGRYEOL/report3/Report3_2.java | 14 ++++++++ src/LEESEUNGRYEOL/report3/Report3_3.java | 21 ++++++++++++ src/LEESEUNGRYEOL/report3/Report3_4.java | 32 ++++++++++++++++++ src/LEESEUNGRYEOL/report3/Report3_5.java | 20 +++++++++++ src/LEESEUNGRYEOL/report3/Report3_6.java | 15 ++++++++ src/LEESEUNGRYEOL/report3/Report3_7.java | 17 ++++++++++ src/LEESEUNGRYEOL/report3/Report3_8.java | 8 +++++ src/LEESEUNGRYEOL/report3/Report3_9.java | 19 +++++++++++ .../report4/Login_diagram.drawio.png | Bin 0 -> 47011 bytes src/LEESEUNGRYEOL/report4/Report4_1 | 9 +++++ src/LEESEUNGRYEOL/report4/Report4_2 | 3 ++ src/LEESEUNGRYEOL/report4/Report4_3.java | 12 +++++++ src/LEESEUNGRYEOL/report4/Report4_4.java | 30 ++++++++++++++++ src/LEESEUNGRYEOL/report4/Report4_5.java | 24 +++++++++++++ src/LEESEUNGRYEOL/report4/Report4_6.java | 31 +++++++++++++++++ 20 files changed, 336 insertions(+), 4 deletions(-) create mode 100644 hanghae-java-study-12.iml create mode 100644 src/LEESEUNGRYEOL/report3/Report3_1 create mode 100644 src/LEESEUNGRYEOL/report3/Report3_10.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_2.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_3.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_4.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_5.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_6.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_7.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_8.java create mode 100644 src/LEESEUNGRYEOL/report3/Report3_9.java create mode 100644 src/LEESEUNGRYEOL/report4/Login_diagram.drawio.png create mode 100644 src/LEESEUNGRYEOL/report4/Report4_1 create mode 100644 src/LEESEUNGRYEOL/report4/Report4_2 create mode 100644 src/LEESEUNGRYEOL/report4/Report4_3.java create mode 100644 src/LEESEUNGRYEOL/report4/Report4_4.java create mode 100644 src/LEESEUNGRYEOL/report4/Report4_5.java create mode 100644 src/LEESEUNGRYEOL/report4/Report4_6.java diff --git a/hanghae-java-study-12.iml b/hanghae-java-study-12.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/hanghae-java-study-12.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report2/Report2_4.java b/src/LEESEUNGRYEOL/report2/Report2_4.java index d564c42..000d389 100644 --- a/src/LEESEUNGRYEOL/report2/Report2_4.java +++ b/src/LEESEUNGRYEOL/report2/Report2_4.java @@ -3,7 +3,7 @@ public class Report2_4 { public static void main(String[] args){ - int numOfApples = 1432; // 사과의 개수 + int numOfApples = 1431; // 사과의 개수 int sizeOfBucket = 10; // 바구니의 크기(바구니에 담을 수 있는 사과의 개수) Find_bucket find_bucket = new Find_bucket(); find_bucket.result(numOfApples,sizeOfBucket); @@ -14,8 +14,14 @@ public static void main(String[] args){ class Find_bucket{ void result(int a, int b) { - int numOfBucket = (a/b + 1); // 모든 사과를 담는데 필요한 바구니의 수 - + int numOfBucket; + if (a%b != 0) + { + numOfBucket = (a/b + 1); // 모든 사과를 담는데 필요한 바구니의 수 + } + else { + numOfBucket = a/b; + } System.out.println("필요한 바구니의 수 :"+numOfBucket); } diff --git a/src/LEESEUNGRYEOL/report2/Report2_6.java b/src/LEESEUNGRYEOL/report2/Report2_6.java index 6bbf1a3..3747bc5 100644 --- a/src/LEESEUNGRYEOL/report2/Report2_6.java +++ b/src/LEESEUNGRYEOL/report2/Report2_6.java @@ -5,14 +5,22 @@ public static void main(String[] args) { int fahrenheit = 100; Calculate_cel calculate_cel = new Calculate_cel(); calculate_cel.cal(fahrenheit); + +// int a = 3; +// float b = 5/9f; +// float c = a*b; +// System.out.println(b); } } + class Calculate_cel{ void cal(int fahrenheit) { float celcius; - celcius = (float) 5/9 * (fahrenheit -32); + celcius = (5/9f) * (fahrenheit -32); int a = (int) (celcius * 1000); + + // b = 올림할껀지 반올림할껀지 판단하는 숫자 int b = a % 10; if (b >= 5) { diff --git a/src/LEESEUNGRYEOL/report3/Report3_1 b/src/LEESEUNGRYEOL/report3/Report3_1 new file mode 100644 index 0000000..472ba31 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_1 @@ -0,0 +1,20 @@ +// 4-1번 문제 + +정답 : + +1. int형 변수 x가 10보다 크고 20보다 작을 때 true인 조건식 + 답: 10 < x && x <20 +2. char형 변수 ch가 공백이나 탭이 아닐 때 true인 조건식 + 답: ch != ' ' && ch != '\t' +3. char형 변수 ch가 'x' 또는 'X'일 때 true인 조건식 + 답: ch == 'x' || ch == 'X' +4. char형 변수 ch가 숫자('0'~'9')일 때 true인 조건식 + 답: ch >= '0' && ch <= '9' +5. char형 변수 ch가 영문자(대문자 또는 소문자)일 때 true인 조건식 + 답: ch >= 'a' && ch < 'Z' +6. int형 변수 year가 400으로 나눠떨어지거나 또는 4로 나눠떨어지고 100으로 나눠떨어지지 않을때 true인 조건식 + 답: year%400 ==0 || year%400==0 && year%100 !=0 +7. boolean형 변수 powerOn이 false일 때 true인 조건식 + 답: !(powerOn = false) +8. 문자열 참조변수 str이 "yes"일 때 true인 조건식 + 답: str.equals("yes") diff --git a/src/LEESEUNGRYEOL/report3/Report3_10.java b/src/LEESEUNGRYEOL/report3/Report3_10.java new file mode 100644 index 0000000..e934432 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_10.java @@ -0,0 +1,32 @@ +package LEESEUNGRYEOL.report3; +//4-10 문제 +public class Report3_10 { + public static void main(String[] args) { + // 1~100사이의 임의의 값을 얻어서 answer에 저장한다. + int answer = (int) (Math.random()*100 + 1); + int input = 0; //사용자입력을 저장할 공간 + int count = 0; //시도횟수를 세기위한 변수 + + // 화면으로 부터 사용자입력을 받기 위해서 Scanner클래스 사용 + java.util.Scanner s = new java.util.Scanner(System.in); + do { + count++; + System.out.print("1과 100사이의 값을 입력하세요 : "); + input = s.nextInt(); //입력받은 값을 변수 input에 저장한다. + if(answer < input) + { + System.out.println("더 작은 수를 입력하세요."); + } + if(answer == input) { + System.out.println("맞혔습니다."); + System.out.println("시도횟수는 " + count + "번입니다."); + break; + } + if(answer > input) + { + System.out.println("더 큰 수를 입력하세요."); + } + } while(true); //무한반복문 + } // end of main + +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_2.java b/src/LEESEUNGRYEOL/report3/Report3_2.java new file mode 100644 index 0000000..c060ff4 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_2.java @@ -0,0 +1,14 @@ +package LEESEUNGRYEOL.report3; +// 4-2번 문제 +public class Report3_2 { + public static void main(String[] args){ + int sum = 0; + for (int i = 1; i <= 10 ; i++) { + if(i%2 != 0 && i%3 != 0) + { + sum += i; + } + } + System.out.println("sum = " + sum); + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_3.java b/src/LEESEUNGRYEOL/report3/Report3_3.java new file mode 100644 index 0000000..2a458b2 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_3.java @@ -0,0 +1,21 @@ +package LEESEUNGRYEOL.report3; +// 4-3 문제 +public class Report3_3 { + public static void main(String [] args) + { + int sum = 0; + int totalSum = 0; + + for (int i = 1; i < 6 ; i++) { + + for (int j = 1; j <= i; j++) { + sum += j; + } + + totalSum += sum; + sum = 0; + } + + System.out.println("totalSum = " + totalSum); + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_4.java b/src/LEESEUNGRYEOL/report3/Report3_4.java new file mode 100644 index 0000000..2606da0 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_4.java @@ -0,0 +1,32 @@ +package LEESEUNGRYEOL.report3; +// 4-4 문제 +public class Report3_4 { + public static void main(String [] args) + { + int sum = 0; + int s = 1; + int num = 0; + + + + while (sum < 5) + { + num++; + + if(s == 1) + { + sum = sum + num; + } + else + { + sum = sum -num; + } + + s = -s; + } + + System.out.println("num = " + num); + System.out.println("sum = " + sum); + } + +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_5.java b/src/LEESEUNGRYEOL/report3/Report3_5.java new file mode 100644 index 0000000..19f7c78 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_5.java @@ -0,0 +1,20 @@ +package LEESEUNGRYEOL.report3; +// 4-5 문제 +public class Report3_5 { + public static void main(String args[]) + { + int i = 0 ,j = 0; + + while (i < 10) + { + while(j <= i) + { + System.out.print('*'); + j++; + } + i++; + j = 0; + System.out.println(); + } + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_6.java b/src/LEESEUNGRYEOL/report3/Report3_6.java new file mode 100644 index 0000000..197b737 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_6.java @@ -0,0 +1,15 @@ +package LEESEUNGRYEOL.report3; +//4-6 문제 +public class Report3_6 { + public static void main(String [] args) + { + for (int i = 1; i <= 6; i++) { + for (int j = 1; j <= 6 ; j++) { + if( i + j == 6) + { + System.out.println("(" + i +","+ j+")"); + } + } + } + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_7.java b/src/LEESEUNGRYEOL/report3/Report3_7.java new file mode 100644 index 0000000..d59e234 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_7.java @@ -0,0 +1,17 @@ +package LEESEUNGRYEOL.report3; +//4-7 문제 +public class Report3_7 { + public static void main(String[] args) { + String str = "12345"; + int sum = 0;; + int number; + + + for (int i = 0; i < str.length(); i++) { + number = str.charAt(i) - 48; + sum += number; + } + + System.out.println("sum=" + sum); + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_8.java b/src/LEESEUNGRYEOL/report3/Report3_8.java new file mode 100644 index 0000000..d86d6b0 --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_8.java @@ -0,0 +1,8 @@ +package LEESEUNGRYEOL.report3; +//4-8 문제 +public class Report3_8 { + public static void main(String[] args){ + int value = (int) (Math.random()*6 + 1); + System.out.println("value:"+value); + } +} diff --git a/src/LEESEUNGRYEOL/report3/Report3_9.java b/src/LEESEUNGRYEOL/report3/Report3_9.java new file mode 100644 index 0000000..33c467d --- /dev/null +++ b/src/LEESEUNGRYEOL/report3/Report3_9.java @@ -0,0 +1,19 @@ +package LEESEUNGRYEOL.report3; +//4-9 문제 +public class Report3_9 { + public static void main(String[] args) { + int num = 12345; + int sum = 0; + int a =1,b =1; + + while (a != 0) + { + a = num / 10; + b = num % 10; + sum = sum +b; + num = a; + } + + System.out.println("sum="+sum); + } +} diff --git a/src/LEESEUNGRYEOL/report4/Login_diagram.drawio.png b/src/LEESEUNGRYEOL/report4/Login_diagram.drawio.png new file mode 100644 index 0000000000000000000000000000000000000000..2326a1487dff140c83c41d0a50cdf2cd8ae668a3 GIT binary patch literal 47011 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%0AqndZLHM^kIWL#}m6rp@cJ?Xw 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 TUK-t^fj@?NW@jsOTyOjru0IFs literal 0 HcmV?d00001 diff --git a/src/LEESEUNGRYEOL/report4/Report4_1 b/src/LEESEUNGRYEOL/report4/Report4_1 new file mode 100644 index 0000000..7f1d80f --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_1 @@ -0,0 +1,9 @@ +// 5-1 번 문제 + +정답 : + 1. int[] arr[]; (가능) + 2. int[] arr = {1,2,3,}; (마지막에 쉼표를 넣어도 가능) + 3. int[] arr = new int[5]; (가능) + 4. int[] arr = new int[5]{1,2,3,4,5}; (불가능, 뒤에 5를 빼야함.) + 5. int arr[5]; (불가능, 배열을 선언할때는 크기 지정 불가능) + 6. int[] arr[] = new int[3][]; (가능) \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report4/Report4_2 b/src/LEESEUNGRYEOL/report4/Report4_2 new file mode 100644 index 0000000..d4b33aa --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_2 @@ -0,0 +1,3 @@ +// 5-2 번 문제 + +정답 :2 \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report4/Report4_3.java b/src/LEESEUNGRYEOL/report4/Report4_3.java new file mode 100644 index 0000000..49de35a --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_3.java @@ -0,0 +1,12 @@ +package LEESEUNGRYEOL.report4; + +public class Report4_3 { + public static void main(String[] args){ + int[] arr = {10, 20, 30, 40, 50}; + int sum = 0; + for (int i = 0; i < arr.length; i++) { + sum += arr[i]; + } + System.out.println("sum="+sum); + } +} diff --git a/src/LEESEUNGRYEOL/report4/Report4_4.java b/src/LEESEUNGRYEOL/report4/Report4_4.java new file mode 100644 index 0000000..2a886a8 --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_4.java @@ -0,0 +1,30 @@ +package LEESEUNGRYEOL.report4; + +public class Report4_4 { + public static void main(String[] args) { + int[][] arr = { + { 5, 5, 5, 5, 5 }, + { 10, 10, 10, 10, 10 }, + { 20, 20, 20, 20, 20 }, + { 30, 30, 30, 30, 30 } + }; + + int total = 0; + int count = 0; + float average = 0; + + + for (int i = 0; i < arr.length; i++) { + for (int j = 0; j < arr[i].length; j++) { + total += arr[i][j]; + count++; + } + } + + average = (float)(total)/count; + /*빈 칸*/ + + System.out.println("total=" + total); + System.out.println("average=" + average); + } +} diff --git a/src/LEESEUNGRYEOL/report4/Report4_5.java b/src/LEESEUNGRYEOL/report4/Report4_5.java new file mode 100644 index 0000000..d23c0a9 --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_5.java @@ -0,0 +1,24 @@ +package LEESEUNGRYEOL.report4; + +public class Report4_5 { + public static void main(String[] args) { + int[] ballArr = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; + int[] ball3 = new int[3]; + + for (int i = 0; i < ballArr.length; i++) { + int j = (int) (Math.random() * ballArr.length); + int tmp = 0; + tmp = ballArr[i]; + ballArr[i] = ballArr[j]; + ballArr[j] = tmp; + } + + for (int i = 0; i < 3; i++) { + ball3[i] = ballArr[i]; + } + + for (int i = 0; i < ball3.length; i++) { + System.out.print(ball3[i]); + } + } +} diff --git a/src/LEESEUNGRYEOL/report4/Report4_6.java b/src/LEESEUNGRYEOL/report4/Report4_6.java new file mode 100644 index 0000000..b01c1fd --- /dev/null +++ b/src/LEESEUNGRYEOL/report4/Report4_6.java @@ -0,0 +1,31 @@ +package LEESEUNGRYEOL.report4; +import java.util.Scanner; + +public class Report4_6 { + public static void main(String args[]) { + String[] words = {"television", "computer", "mouse", "phone"}; + + Scanner scanner = new Scanner(System.in); + + for (int i = 0; i < words.length; i++) { + char[] question = words[i].toCharArray(); // String을 char[]로 변환 + char tmp; + for (int j = 0; j < question.length; j++) { + int k = (int) (Math.random() * question.length); + tmp = question[j]; + question[j] = question[k]; + question[k] = tmp; + } + + + System.out.printf("Q%d. %s의 정답을 입력하세요 .>", i + 1, new String(question)); + String answer = scanner.nextLine(); + + // trim()으로 answer의 좌우 공백을 제거한 후, equals로 word[i]와 비교 + if (words[i].equals(answer.trim())) + System.out.printf("맞았습니다.%n%n"); + else + System.out.printf("틀렸습니다.%n%n"); + } + } +} From 0481a4aec33615d4150d3b7c55fd69abfeb1ceac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8B=E1=85=B5=E1=84=89=E1=85=B3=E1=86=BC=E1=84=85?= =?UTF-8?q?=E1=85=A7=E1=86=AF?= Date: Wed, 25 Jan 2023 15:32:57 +0900 Subject: [PATCH 3/4] =?UTF-8?q?Add:=20Report=205,6,7=20=EC=A0=9C=EC=B6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/LEESEUNGRYEOL/report3/Report3_5.java | 19 ++- src/LEESEUNGRYEOL/report4/Report4_4.java | 2 - src/LEESEUNGRYEOL/report5/Report5_1 | 20 +++ src/LEESEUNGRYEOL/report5/Report5_2.java | 39 ++++++ src/LEESEUNGRYEOL/report5/Report5_3.java | 41 ++++++ src/LEESEUNGRYEOL/report5/Report5_4 | 25 ++++ src/LEESEUNGRYEOL/report5/Report5_5 | 37 +++++ src/LEESEUNGRYEOL/report6/Report6_1.md | 164 +++++++++++++++++++++++ src/LEESEUNGRYEOL/report7/Report7_1.java | 26 ++++ src/LEESEUNGRYEOL/report7/Report7_2.java | 29 ++++ src/LEESEUNGRYEOL/report7/Report7_3.java | 68 ++++++++++ src/LEESEUNGRYEOL/report7/Report7_4.java | 37 +++++ src/LEESEUNGRYEOL/report7/Report7_5.java | 19 +++ 13 files changed, 518 insertions(+), 8 deletions(-) create mode 100644 src/LEESEUNGRYEOL/report5/Report5_1 create mode 100644 src/LEESEUNGRYEOL/report5/Report5_2.java create mode 100644 src/LEESEUNGRYEOL/report5/Report5_3.java create mode 100644 src/LEESEUNGRYEOL/report5/Report5_4 create mode 100644 src/LEESEUNGRYEOL/report5/Report5_5 create mode 100644 src/LEESEUNGRYEOL/report6/Report6_1.md create mode 100644 src/LEESEUNGRYEOL/report7/Report7_1.java create mode 100644 src/LEESEUNGRYEOL/report7/Report7_2.java create mode 100644 src/LEESEUNGRYEOL/report7/Report7_3.java create mode 100644 src/LEESEUNGRYEOL/report7/Report7_4.java create mode 100644 src/LEESEUNGRYEOL/report7/Report7_5.java diff --git a/src/LEESEUNGRYEOL/report3/Report3_5.java b/src/LEESEUNGRYEOL/report3/Report3_5.java index 19f7c78..999033f 100644 --- a/src/LEESEUNGRYEOL/report3/Report3_5.java +++ b/src/LEESEUNGRYEOL/report3/Report3_5.java @@ -1,20 +1,27 @@ package LEESEUNGRYEOL.report3; + // 4-5 문제 public class Report3_5 { - public static void main(String args[]) - { - int i = 0 ,j = 0; + public static void main(String args[]) { + int i = 0, j = 0; + - while (i < 10) + while (i < 5) { - while(j <= i) - { + //i = 2 j = 3 + + while (j <= i) { System.out.print('*'); j++; } + + i++; j = 0; System.out.println(); + } + + } } diff --git a/src/LEESEUNGRYEOL/report4/Report4_4.java b/src/LEESEUNGRYEOL/report4/Report4_4.java index 2a886a8..f3dfb83 100644 --- a/src/LEESEUNGRYEOL/report4/Report4_4.java +++ b/src/LEESEUNGRYEOL/report4/Report4_4.java @@ -22,8 +22,6 @@ public static void main(String[] args) { } average = (float)(total)/count; - /*빈 칸*/ - System.out.println("total=" + total); System.out.println("average=" + average); } diff --git a/src/LEESEUNGRYEOL/report5/Report5_1 b/src/LEESEUNGRYEOL/report5/Report5_1 new file mode 100644 index 0000000..a531885 --- /dev/null +++ b/src/LEESEUNGRYEOL/report5/Report5_1 @@ -0,0 +1,20 @@ +//6-1번 문제 + +// 타입 : String, 변수명 : name, 설명 : 학생 이름 +//타입 : int, 변수명 : ban, 설명 : 반 +//타입 : int, 변수명 : no, 설명 : 번호 +//타입 : int, 변수명 : kor, 설명 : 국어 점수 +//타입 : int, 변수명 : eng, 설명 : 영어 점수 +//타입 : int, 변수명 : math, 설명 : 수학 점수 + +class Student{ + String name; + int ban; + int no: + int kor; + int eng; + int math; +} + + + diff --git a/src/LEESEUNGRYEOL/report5/Report5_2.java b/src/LEESEUNGRYEOL/report5/Report5_2.java new file mode 100644 index 0000000..cde1cc4 --- /dev/null +++ b/src/LEESEUNGRYEOL/report5/Report5_2.java @@ -0,0 +1,39 @@ +package LEESEUNGRYEOL.report5; + +// 6-2 번 문제 +public class Report5_2 { + public static void main(String[] args) { + Student1 s = new Student1("홍길동",1,1,100,60,76); + String str = s.info(); + System.out.println(str); + } +} + +class Student1 { + String name; + int ban; + int no; + int kor; + int eng; + int math; + double sum; + double avg; + + // 생성자 + Student1(String name, int ban, int no, int kor, int eng, int math) + { + this.name = name; + this.ban = ban; + this.no = no; + this.kor = kor; + this.eng = eng; + this.math = math; + this.sum = kor+eng+math; + this.avg = Math.ceil(sum/3 * 10)/ 10; + } + String info () + { + return (name+", "+ban+", "+ no+", "+kor+", "+eng+", "+math+", "+(int)sum+", "+avg); + } + +} diff --git a/src/LEESEUNGRYEOL/report5/Report5_3.java b/src/LEESEUNGRYEOL/report5/Report5_3.java new file mode 100644 index 0000000..0aa71a0 --- /dev/null +++ b/src/LEESEUNGRYEOL/report5/Report5_3.java @@ -0,0 +1,41 @@ +package LEESEUNGRYEOL.report5; +// 6-3 문제 +public class Report5_3 { + public static void main(String args[]) { + Student s = new Student(); + s.name = "홍길동"; + s.ban = 1; + s.no = 1; + s.kor = 100; + s.eng = 60; + s.math = 76; + System.out.println("이름 :"+s.name); + System.out.println("총점 :"+s.getTotal()); + System.out.println("평균 :"+s.getAverage()); + }//예상 결과 : 이름 : 홍길동, 총점 : 236, 평균 : 78.7 +} + +class Student { + String name; + int ban; + int no; + int kor; + int eng; + int math; + double sum; + double avg; + int getTotal() + { + int total; + total = kor + eng + math; + return total; + } + + float getAverage() + { + double average; + average = (double)(kor+eng+math)/3; + average = Math.ceil(average *10)/10; + return (float)average; + } +} \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report5/Report5_4 b/src/LEESEUNGRYEOL/report5/Report5_4 new file mode 100644 index 0000000..31ae231 --- /dev/null +++ b/src/LEESEUNGRYEOL/report5/Report5_4 @@ -0,0 +1,25 @@ +다음의 코드에 정의된 변수들을 종류별(클래스 변수,인스턴스 변수, 지역변수)로 구분해서 적으세요. +// 6-5번 문제 + +class PlayingCard { + int kind; + int num; + static int width; + static int height; + PlayingCard(int k, int n) { + kind = k; + num = n; + } + public static void main(String args[]) { + PlayingCard card = new PlayingCard(1,1); + } +} + +클래스변수(CV) +: width, height + +인스턴스변수(IV) +: kind, num + +지역변수(LV) +: k , n \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report5/Report5_5 b/src/LEESEUNGRYEOL/report5/Report5_5 new file mode 100644 index 0000000..b152723 --- /dev/null +++ b/src/LEESEUNGRYEOL/report5/Report5_5 @@ -0,0 +1,37 @@ +다음은 컴퓨터 게임의 병사(marine)를 클래스로 정의한 것이다. +// 6-7번 문제 + +//이 클래스의 멤버 중에 static을 붙여야 하는 것은 어떤 것들이고 그 이유는 무엇인가? +//(단, 모든 병사의 공격력과 방어력은 같아야 한다.) + +class Marine { + + int x=0, y=0; //Marine의 위치좌표 (x,y) + int hp = 60; //현재 체력 + int weapon = 6; //공격력 + int armor = 0; //방어력 + + void weaponUp() { + weapon++; + } + void armorUp() { + armor++; + } + + void move(int x, int y) { + this.x = x; + this.y = y; + } +} + +클래스 변수 (CV) +: weapon, armor + +인스턴스 변수 (IV) +: x, y, hp, + +지역변수 (LV) +: x, y + +static을 붙여야 하는 것 +: weapon, armor, weaponUp(), armorUp() (클래스변수의 증가 또한 모든 인스턴스가 동일한 값을 가져야 함.) \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report6/Report6_1.md b/src/LEESEUNGRYEOL/report6/Report6_1.md new file mode 100644 index 0000000..40290ca --- /dev/null +++ b/src/LEESEUNGRYEOL/report6/Report6_1.md @@ -0,0 +1,164 @@ +6-8. 다음 중 생성자에 대한 설명으로 옳지 않은 것은? (모두 고르시오) + +a. 모든 생성자의 이름은 클래스의 이름과 동일해야한다. + +b. 생성자는 객체를 생성하기 위한 것이다. + +c. 클래스에는 생성자가 반드시 하나 이상 있어야 한다. + +d. 생성자가 없는 클래스는 컴파일러가 기본 생성자를 추가한다. + +e. 생성자는 오버로딩 할 수 없다. + +답: e + + +6-9. 다음 중 this에 대한 설명으로 맞지 않은 것은? (모두 고르시오) + +a. 객체 자신을 가리키는 참조변수이다. + +b. 클래스 내에서라면 어디서든 사용할 수 있다. + +c. 지역변수와 인스턴스변수를 구별할 때 사용한다. + +d. 클래스 메서드 내에서는 사용할 수 없다. + + +답: b(클래스멤버에서는 사용할 수 없다) + +6-10. 다음 중 오버로딩이 성립하기 위한 조건이 아닌 것은? (모두 고르시오) + +a. 메서드의 이름이 같아야 한다. + +b. 매개변수의 개수나 타입이 달라야 한다. + +c. 리턴타입이 달라야 한다. + +d. 매개변수의 이름이 달라야 한다. + + +답: c , d + +6-11. 다음 중 아래의 add메서드를 올바르게 오버로딩 한 것은? (모두 고르시오) +```java +> long add(int a, int b) { return a+b; } +``` + +a. long add(int x, int y) { return x+y; } + +b. long add(long a, long b) { return a+b; } + +c. int add(byte a, byte b) { return a+b; } + +d. int add(long a, int b) { return (int)(a+b); } + + +답: b, c, d + +6-12. 다음 중 초기화에 대한 설명으로 옳지 않은 것은? (모두 고르시오) + +a. 멤버변수는 자동 초기화되므로 초기화하지 않고도 값을 참고할 수 있다. + +b. 지역변수는 사용하기 전에 반드시 초기화해야 한다. + +c. 초기화 블럭보다 생성자가 먼저 수행된다. + +d. 명시적 초기화를 제일 우선적으로 고려해야 한다. + +e. 클래스변수보다 인스턴스변수가 먼저 초기화된다 + +답: + +c(초기화 블럭 -> 생성자), e (클래스 변수 -> 인스턴스 변수) + + + +클래스 변수는 클래스가 처음 메모리에 로딩될 때, 자동 초기화되므로 인스턴스 변수보다 먼저 초기화된다. + +그리고 생성자는 초기화 블럭이 수행된 다음에 수행됨. + +6-13. 다음 중 인스턴스변수의 초기화 순서가 올바른 것은? + +a. 기본값-명시적초기화-초기화블럭-생성자 + +b. 기본값-명시적초기화-생성자-초기화블럭 + +c. 기본값-초기화블럭-명시적초기화-생성자 + +d. 기본값-초기화블럭-생성자-명시적초기화 + + +답: a + + +클래스변수 초기화 : 클래스가 처음 로딩될 때 단 한번 초기화 된다. + +인스턴스 변수의 초기화: 인스턴스가 생성될 때마다 각 인스턴스 별로 초기화가 이루어진다. + +>클래스 변수 초기화 순서 + +기본값 -> 명시적 초기화 -> 클래스 초기화 블럭 + +> 인스턴스 변수의 초기화 순서 + +기본값 -> 명시적 초기화 -> 인스턴스 초기화 블럭 -> 생성자 + + +6-14. 다음 중 지역변수에 대한 설명으로 옳지 않은 것은? (모두 고르시오) + +a. 자동 초기화되므로 별도의 초기화가 필요없다. + +b. 지역변수가 선언된 메서드가 종료되면 지역변수도 함께 소멸된다. + +c. 메서드의 매개변수로 선언된 변수도 지역변수이다. + +d. 클래스변수나 인스턴스변수보다 메모리 부담이 적다. + +e. 힙(heap)영역에 생성되며 가비지 컬렉터에 의해 소멸된다. + + +답: a, e + +힙영역에는 인스턴스가 생성되는 영역이며, 지역변수는 호출스택 영역에서 생성 + +6-15. 호출스택이 다음과 같은 상황일 때 옳지 않은 설명은? (모두 고르시오) + +a. 제일 먼저 호출스택에 저장된 것은 main메서드이다. + +b. println메서드를 제외한 나머지 메서드들은 모두 종료된 상태이다. + +c. method2메서드를 호출한 것은 main메서드이다. + +d. println메서드가 종료되면 method1메서드가 수행을 재개한다. + +e. main-method2-method1-println의 순서로 호출되었다. + +f. 현재 실행중인 메서드는 println뿐이다. + +답: b, f + +(현제 println이 실해되는 것은 맞지만, 그 아래의 method들이 실행이 종료된 것은 아니기 때문에 전체가 실행되고 있다고 볼 수있다.) + + +6-16. 다음 코드의 실행 결과를 예측하여 적어주세요. +```java +class Exercise6_16 { + public static void change(String str) { + str += "456"; + } + + public static void main(String[] args) { + String str = "ABC123"; + System.out.println(str); + change(str); + System.out.println("After change:" + str); + } +} +``` +답: + +ABC123 + +After change:ABC123 + +이유: 클래스 메소드는 인스턴스 메소드와는 관련이 없다. \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report7/Report7_1.java b/src/LEESEUNGRYEOL/report7/Report7_1.java new file mode 100644 index 0000000..dd44863 --- /dev/null +++ b/src/LEESEUNGRYEOL/report7/Report7_1.java @@ -0,0 +1,26 @@ +package LEESEUNGRYEOL.report7; +// 6-17번 문제 +// shuffle method 작성 -> 주어진 배열에 담긴 값의 위치를 바꾸는 작업을 반복 +// 반환타입 int 리스트, 매개변수 int[] arr (정수값이 담긴 배열) +public class Report7_1 { + + static int[] shuffle(int[] original) + { + int tmp; + int random_num = (int) (Math.random()*original.length); + for (int i = 0; i < original.length ; i++) { + tmp = original[i]; + original[i] = original[random_num]; + original[random_num] = tmp; + } + return original; + } + + public static void main(String[] args) { + int[] original = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; + System.out.println(java.util.Arrays.toString(original)); + + int[] result = shuffle(original); + System.out.println(java.util.Arrays.toString(result)); + } +} diff --git a/src/LEESEUNGRYEOL/report7/Report7_2.java b/src/LEESEUNGRYEOL/report7/Report7_2.java new file mode 100644 index 0000000..51e7f64 --- /dev/null +++ b/src/LEESEUNGRYEOL/report7/Report7_2.java @@ -0,0 +1,29 @@ +package LEESEUNGRYEOL.report7; +// 6-18 문제 +class Exercise6_18 { + + static boolean isNumber(String str){ + int cnt = 0; + for (int i = 0; i = 48 && str.charAt(i) <=57) + { + cnt++; + } + } + if(cnt == str.length()) + { + return true; + } + else{ + return false; + } + } + + public static void main(String[] args) { + String str = "123"; + System.out.println(str + " 는 숫자입니까? " + isNumber(str)); + str = "1234o"; + System.out.println(str + " 는 숫자입니까? " + isNumber(str)); + } +} +//예상 결과 : 123는 숫자입니까? true, 1234o는 숫자입니까? false \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report7/Report7_3.java b/src/LEESEUNGRYEOL/report7/Report7_3.java new file mode 100644 index 0000000..77d78ea --- /dev/null +++ b/src/LEESEUNGRYEOL/report7/Report7_3.java @@ -0,0 +1,68 @@ +package LEESEUNGRYEOL.report7; +//6-19번 문제 +class MyTv { + boolean isPowerOn; + int channel; + int volume; + final int MAX_VOLUME = 100; + final int MIN_VOLUME = 0; + final int MAX_CHANNEL = 100; + final int MIN_CHANNEL = 1; + void turnOnOff() { + // (1) isPowerOn의 값이 true면 false로, false면 true로 바꾼다. + isPowerOn = !isPowerOn; + } + void volumeUp() { + // (2) volume의 값이 MAX_VOLUME보다 작을 때만 값을 1 증가시킨다. + if(volume < MAX_VOLUME) + { + volume++; + } + } + void volumeDown() { + // (3) volume의 값이 MIN_VOLUME보다 클 때만 값을 1 감소시킨다. + if(volume > MIN_VOLUME) + { + volume--; + } + } + void channelUp() { + // (4) channel의 값을 1 증가시킨다. + // 만일 channel이 MAX_CHANNEL이면 , channel의 값을 MIN_CHANNEL로 바꾼다. + channel++; + + if(channel > MAX_CHANNEL) + { + channel = MIN_CHANNEL; + } + + } + void channelDown() { + // (5) channel의 값을 1 감소시킨다 . + // 만일 channel이 MIN_CHANNEL이면, channel의 값을 MAX_CHANNEL로 바꾼다. + channel--; + if(channel < MIN_CHANNEL) + { + channel = MAX_CHANNEL; + } + + } +} + +class Exercise6_19 { + public static void main(String args[]) { + MyTv t = new MyTv(); + t.channel = 100; + t.volume = 0; + System.out.println("CH:" + t.channel + ", VOL:" + t.volume); + t.channelDown(); + t.volumeDown(); + System.out.println("CH:" + t.channel + ", VOL:" + t.volume); + t.volume = 100; + t.channelUp(); + t.volumeUp(); + System.out.println("CH:" + t.channel + ", VOL:" + t.volume); + } +} + +//예상 결과 : CH: 100, VOL: 0 / CH: 99, VOL: 0 / CH: 100, VOL: 100 diff --git a/src/LEESEUNGRYEOL/report7/Report7_4.java b/src/LEESEUNGRYEOL/report7/Report7_4.java new file mode 100644 index 0000000..7559b3a --- /dev/null +++ b/src/LEESEUNGRYEOL/report7/Report7_4.java @@ -0,0 +1,37 @@ +package LEESEUNGRYEOL.report7; + +// 6-21번 문제 +public class Report7_4 { + /* (1) max 메서드를 작성하시오 . */ + + static int max(int[] arr) + { + if(arr == null || arr.length ==0) + { + return -999999; + } + + int max = 0; + for (int i = 0; i = max) + { + max = arr[i]; + } + } + + return max; + } + + public static void main(String[] args) { + int[] data = {3, 2, 9, 4, 7}; + System.out.println(java.util.Arrays.toString(data)); + System.out.println("최대값 :" + max(data)); + System.out.println("최대값 :" + max(null)); + System.out.println("최대값 :" + max(new int[]{})); // 크기가 0인 배열 } + } + + +//예상 결과 : 최대값: 9 / 최대값: -99999 최대값: -999999 + + +} diff --git a/src/LEESEUNGRYEOL/report7/Report7_5.java b/src/LEESEUNGRYEOL/report7/Report7_5.java new file mode 100644 index 0000000..9fbfa04 --- /dev/null +++ b/src/LEESEUNGRYEOL/report7/Report7_5.java @@ -0,0 +1,19 @@ +package LEESEUNGRYEOL.report7; + +public class Report7_5 { + /* (1) abs 메서드를 작성하시오. */ + static int abs(int value) + { + int answer; + answer = (value<0 ? -value:value); + return answer; + } + + public static void main(String[] args) { + int value = 7; + System.out.println(value + "의 절대값 :" + abs(value)); + value = -10; + System.out.println(value + "의 절대값 :" + abs(value)); + } +//예상 결과 : 5의 절대값 : 5 / -10의 절대값 : 10 +} From 458cc5ddb0f5140c993a356ebabe6c9bb93b6ffe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E1=84=8B=E1=85=B5=E1=84=89=E1=85=B3=E1=86=BC=E1=84=85?= =?UTF-8?q?=E1=85=A7=E1=86=AF?= Date: Wed, 25 Jan 2023 17:15:13 +0900 Subject: [PATCH 4/4] =?UTF-8?q?Add:=20Report=208=20=EC=A0=9C=EC=B6=9C?= =?UTF-8?q?=EC=99=84=EB=A3=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/LEESEUNGRYEOL/report7/Report7_1.java | 10 +-- src/LEESEUNGRYEOL/report8/Report8_2.java | 94 ++++++++++++++++++++++++ src/LEESEUNGRYEOL/report8/Report8_3.java | 36 +++++++++ src/LEESEUNGRYEOL/report8/Report8_4.java | 49 ++++++++++++ src/LEESEUNGRYEOL/report8/Report8_5.java | 46 ++++++++++++ src/LEESEUNGRYEOL/report8/report8_1.java | 61 +++++++++++++++ 6 files changed, 291 insertions(+), 5 deletions(-) create mode 100644 src/LEESEUNGRYEOL/report8/Report8_2.java create mode 100644 src/LEESEUNGRYEOL/report8/Report8_3.java create mode 100644 src/LEESEUNGRYEOL/report8/Report8_4.java create mode 100644 src/LEESEUNGRYEOL/report8/Report8_5.java create mode 100644 src/LEESEUNGRYEOL/report8/report8_1.java diff --git a/src/LEESEUNGRYEOL/report7/Report7_1.java b/src/LEESEUNGRYEOL/report7/Report7_1.java index dd44863..79fb40a 100644 --- a/src/LEESEUNGRYEOL/report7/Report7_1.java +++ b/src/LEESEUNGRYEOL/report7/Report7_1.java @@ -1,14 +1,14 @@ package LEESEUNGRYEOL.report7; + // 6-17번 문제 // shuffle method 작성 -> 주어진 배열에 담긴 값의 위치를 바꾸는 작업을 반복 // 반환타입 int 리스트, 매개변수 int[] arr (정수값이 담긴 배열) public class Report7_1 { - static int[] shuffle(int[] original) - { + static int[] shuffle(int[] original) { int tmp; - int random_num = (int) (Math.random()*original.length); - for (int i = 0; i < original.length ; i++) { + for (int i = 0; i < original.length; i++) { + int random_num = (int) (Math.random() * original.length); tmp = original[i]; original[i] = original[random_num]; original[random_num] = tmp; @@ -17,7 +17,7 @@ static int[] shuffle(int[] original) } public static void main(String[] args) { - int[] original = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; + int[] original = {1, 2, 3, 4, 5, 6, 7, 8, 9}; System.out.println(java.util.Arrays.toString(original)); int[] result = shuffle(original); diff --git a/src/LEESEUNGRYEOL/report8/Report8_2.java b/src/LEESEUNGRYEOL/report8/Report8_2.java new file mode 100644 index 0000000..4406e6b --- /dev/null +++ b/src/LEESEUNGRYEOL/report8/Report8_2.java @@ -0,0 +1,94 @@ +package LEESEUNGRYEOL.report8; + +import java.util.Arrays; + +class SutdaDeck1 { + final int CARD_NUM = 20; + SutdaCard1[] cards = new SutdaCard1[CARD_NUM]; + + SutdaDeck1() { + + boolean iskwang; + int[] checklist = new int[3]; + + for (int i = 0; i < CARD_NUM / 2; i++) { + if (i + 1 == 1 || i + 1 == 3 || i + 1 == 8) { + cards[i] = new SutdaCard1(i + 1, true); + } else { + cards[i] = new SutdaCard1(i + 1, false); + } + } + + + for (int i = CARD_NUM / 2; i < CARD_NUM; i++) { + if (i == 1 || i == 3 || i == 8) { + cards[i] = new SutdaCard1(i - 9, false); + } else { + cards[i] = new SutdaCard1(i - 9, false); + } + } + + + } + + void shuffle() { + SutdaCard1 tmp; + for (int i = 0; i < cards.length ; i++) { + int random_num =(int) (Math.random()*cards.length); + tmp = cards[i]; + cards[i] = cards[random_num]; + cards[random_num] = tmp; +// System.out.println("random_num = " + random_num); +// System.out.println(Arrays.toString(cards)); + } + } + + SutdaCard1 pick(int index) { + return cards[index]; + } + + SutdaCard1 pick() { + int random_num =(int) (Math.random()*cards.length); + return cards[random_num]; + } +} // SutdaDeck + +class SutdaCard1 { + int num; + boolean isKwang; + + + SutdaCard1() { + this(1, true); + } + + SutdaCard1(int num, boolean isKwang) { + this.num = num; + this.isKwang = isKwang; + } + + public String toString() { + return num + ( isKwang ? "K":""); + } +} + +class Exercise7_2 { + public static void main(String args[]) { + SutdaDeck1 deck = new SutdaDeck1(); + + System.out.println(deck.pick(0)); + System.out.println(deck.pick()); + deck.shuffle(); + + for(int i=0; i < deck.cards.length;i++) + System.out.print(deck.cards[i]+","); + + System.out.println(); + System.out.println(deck.pick(0)); + } +} +//예상결과) +// 1K +// 7 +// 2,6,10,1K,7,3,10,5,7,8,5,1,2,9,6,9,4,8K,4,3K, +// 2 \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report8/Report8_3.java b/src/LEESEUNGRYEOL/report8/Report8_3.java new file mode 100644 index 0000000..e02472f --- /dev/null +++ b/src/LEESEUNGRYEOL/report8/Report8_3.java @@ -0,0 +1,36 @@ +package LEESEUNGRYEOL.report8; + +class Product { + int price; // 제품의 가격 + int bonusPoint; // 제품구매 시 제공하는 보너스점수 + + // (구현) + Product() + { + } + Product(int price) { + this.price = price; + bonusPoint = (int) (price / 10.0); + } +} + +class Tv extends Product { + Tv() { + } + + public String toString() { + return "Tv"; + } +} + +class Exercise7_3 { + public static void main(String[] args) { + Tv t = new Tv(); + } +} + +// 틀린 이유 +// 일단 틀린 부분은 TV(){} 기본생성자에서 문제가 발생하는데, 이때 문제가 발생하는 이유는 +// Tv 생성자에서 모든 생성자는 첫줄에 다른 생성자를 호출해야 된다. 이때 Tv class 에서는 기본 생성자만 존재 +// 따라서 자동적으로 super() 생성자를 호출한다. 하지만 super 은 Tv 클래스의 조상인 Product 인데 여기에는 기본생성자가 없다. +// 따라서 기본생성자를 생성하고 나면 오류가 사라진다. \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report8/Report8_4.java b/src/LEESEUNGRYEOL/report8/Report8_4.java new file mode 100644 index 0000000..53a3d9a --- /dev/null +++ b/src/LEESEUNGRYEOL/report8/Report8_4.java @@ -0,0 +1,49 @@ +package LEESEUNGRYEOL.report8; + +class MyTv { + public boolean isPowerOn() { + return isPowerOn; + } + + private boolean isPowerOn; + + public int getChannel() { + return channel; + } + + public void setChannel(int channel) { + this.channel = channel; + } + + private int channel; + + public int getVolume() { + return volume; + } + + public void setVolume(int volume) { + this.volume = volume; + } + + private int volume; + + final int MAX_VOLUME = 100; + final int MIN_VOLUME = 0; + final int MAX_CHANNEL = 100; + final int MIN_CHANNEL = 1; + + // (구현) + +} + +class Exercise7_4 { + public static void main(String args[]) { + MyTv t = new MyTv(); + + t.setChannel(10); + System.out.println("CH:" + t.getChannel()); + t.setVolume(20); + System.out.println("VOL:" + t.getVolume()); + } +} +//예상결과) CH:10 VOL:20 \ No newline at end of file diff --git a/src/LEESEUNGRYEOL/report8/Report8_5.java b/src/LEESEUNGRYEOL/report8/Report8_5.java new file mode 100644 index 0000000..85d9f11 --- /dev/null +++ b/src/LEESEUNGRYEOL/report8/Report8_5.java @@ -0,0 +1,46 @@ +package LEESEUNGRYEOL.report8; + +class MyTv2 { + private int channel; + private int prevChannel; + final int MAX_CHANNEL = 100; + final int MIN_CHANNEL = 1; + + public void gotoPrevChannel() { + int tmp; + tmp = this.channel; + this.channel = this.prevChannel; + this.prevChannel = tmp; + } + + public void setChannel(int channel) { + if (channel > MAX_CHANNEL || channel < MIN_CHANNEL) + return; + + this.prevChannel = this.channel; + this.channel = channel; + } + + public int getChannel() { + return channel; + } +} + +class Exercise7_5 { + public static void main(String args[]) { + MyTv2 t = new MyTv2(); + t.setChannel(10); + System.out.println("CH:" + t.getChannel()); + t.setChannel(20); + System.out.println("CH:" + t.getChannel()); + t.gotoPrevChannel(); + System.out.println("CH:" + t.getChannel()); + t.gotoPrevChannel(); + System.out.println("CH:" + t.getChannel()); + } +} + +// CH:10 +// CH:20 +// CH:10 +// CH:20 diff --git a/src/LEESEUNGRYEOL/report8/report8_1.java b/src/LEESEUNGRYEOL/report8/report8_1.java new file mode 100644 index 0000000..0a063c9 --- /dev/null +++ b/src/LEESEUNGRYEOL/report8/report8_1.java @@ -0,0 +1,61 @@ +package LEESEUNGRYEOL.report8; + +class SutdaDeck { + final int CARD_NUM = 20; + SutdaCard[] cards = new SutdaCard[CARD_NUM]; + + SutdaDeck() { + // (구현) 배열 SutdaCard를 적절히 초기화 하시오. + boolean iskwang; + int[] checklist = new int[3]; + + for (int i = 0; i < CARD_NUM/2; i++) { + if (i+1 == 1 || i+1 == 3 || i+1 == 8) { + cards[i] = new SutdaCard(i+1, true); + } + else{ + cards[i] =new SutdaCard(i+1 ,false); + } + } + + + for (int i = CARD_NUM/2; i < CARD_NUM; i++) { + if (i == 1 || i == 3 || i == 8) { + cards[i] = new SutdaCard(i-9, false); + } + else{ + cards[i] =new SutdaCard(i-9,false); + } + } + + } +} + +class SutdaCard { + int num; + boolean isKwang; + + SutdaCard() { + this(1, true); + } + + SutdaCard(int num, boolean isKwang) { + this.num = num; + this.isKwang = isKwang; + } + + // info()대신 Object클래스의 toString()을 오버라이딩했다. + public String toString() { + return num + (isKwang ? "K" : ""); + } +} + +class Exercise7_1 { + public static void main(String args[]) { + SutdaDeck1 deck = new SutdaDeck1(); + + for (int i = 0; i < deck.cards.length; i++) + System.out.print(deck.cards[i] + ","); + } +} +// 예상결과) 1K,2,3K,4,5,6,7,8K,9,10,1,2,3,4,5,6,7,8,9,10, \ No newline at end of file