Skip to content

Commit

Permalink
Merge pull request #19 from KEEPER31337/problem34-sunny
Browse files Browse the repository at this point in the history
Problem34 sunny
  • Loading branch information
shkisme authored Jul 12, 2023
2 parents 1c55716 + 0ee8b7c commit 8c2aa0b
Show file tree
Hide file tree
Showing 15 changed files with 63 additions and 8 deletions.
3 changes: 2 additions & 1 deletion src/main/java/Problem/sunny/Chapter3/Q01.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ public static void main(String[] args) {
int korean = 80;
int english = 75;
int math = 55;

// TODO: 평균 점수를 구해서 출력하기
float result = (korean + english + math) / 3;
System.out.println(result);
}
}
5 changes: 5 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q02.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,10 @@ public static void main(String[] args) {
int num = 13;

// TODO: num이 홀수라면 odd를, 짝수라면 even을 출력하기
if ((num % 2) == 1) {
System.out.printf("odd");
} else {
System.out.println("even");
}
}
}
2 changes: 2 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q03.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,7 @@ public static void main(String[] args) {
String personNumber = "881120-1068234";

// TODO: 주민등록번호를 연월일(YYYYMMDD) 부분과 그 뒤의 숫자 부분으로 나누어 출력하기
System.out.println(personNumber.substring(0, 6));
System.out.println(personNumber.substring(7, 14));
}
}
1 change: 1 addition & 0 deletions src/main/java/Problem/sunny/Chapter3/Q04.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,6 @@ public static void main(String[] args) {
String personNumber = "881120-1068234";

// TODO: 주민등록번호에서 성별을 나타내는 숫자(뒷자리의 맨 첫번째 숫자)를 출력하기
System.out.println(personNumber.charAt(7));
}
}
2 changes: 2 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q05.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,7 @@ public static void main(String[] args) {
String a = "a:b:c:d";

// TODO: replace 함수를 사용하여 a#b#c#d로 바꿔서 출력해 보자.
String b = a.replaceAll(":", "#");
System.out.println(b);
}
}
3 changes: 3 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q06.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;

public class Q06 {

Expand All @@ -13,5 +14,7 @@ public static void main(String[] args) {
System.out.println(myList); // [1, 3, 5, 4, 2]가 출력됨.

// TODO: 리스트를 [5, 4, 3, 2, 1]로 만들어서 출력하기
myList.sort(Comparator.reverseOrder());
System.out.println(myList);
}
}
2 changes: 2 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q07.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,7 @@ public static void main(String[] args) {
System.out.println(myList); // [Life, is, too, short] 출력됨.

// TODO: 리스트를 "Life is too short" 문자열로 만들어 출력해 보자.
String a = String.join(" ", myList);
System.out.println(a);
}
}
2 changes: 2 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q08.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,7 @@ public static void main(String[] args) {
grade.put("C", 70);

// TODO: 다음의 맵 grade에서 "B'에 해당되는 값을 추출해 보자. (추출하고 나면 grade에는 "B"에 해당하는 아이템이 사라져야 한다.)
grade.remove("B");
System.out.println(grade);
}
}
3 changes: 3 additions & 0 deletions src/main/java/Problem/sunny/Chapter3/Q09.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;

public class Q09 {

Expand All @@ -13,5 +14,7 @@ public static void main(String[] args) {
System.out.println(numbers); // [1, 1, 1, 2, 2, 3, 3, 3, 4, 4, 5] 출력됨.

// TODO: numbers 리스트에서 중복 숫자를 제거해 보자.
HashSet<Integer> nums = new HashSet<>(numbers);
System.out.println(nums);
}
}
23 changes: 16 additions & 7 deletions src/main/java/Problem/sunny/Chapter3/Q10.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,26 @@ public class Q10 {
/**
* 다음은 커피의 종류(1: 아메리카노, 2:아이스 아메리카노, 3:카페라떼)를 입력하면 커피의 가격을 알려주는 프로그램이다. 위 코드에서 1, 2, 3과 같은 매직넘버를 제거하여 프로그램을 개선해보자.
*/
static void printCoffeePrice(int type) {
HashMap<Integer, Integer> priceMap = new HashMap<>();
priceMap.put(1, 3000); // 1: 아메리카노
priceMap.put(2, 4000); // 2: 아이스 아메리카노
priceMap.put(3, 5000); // 3: 카페라떼
enum CoffeeType {
AMERICANO,
ICE_AMERICANO,
CAFE_LATTE
}

;

static void printCoffeePrice(CoffeeType type) {
HashMap<CoffeeType, Integer> priceMap = new HashMap<>();
priceMap.put(CoffeeType.AMERICANO, 3000); // 1: 아메리카노
priceMap.put(CoffeeType.ICE_AMERICANO, 4000); // 2: 아이스 아메리카노
priceMap.put(CoffeeType.CAFE_LATTE, 5000); // 3: 카페라떼
int price = priceMap.get(type);
System.out.println(String.format("가격은 %d원 입니다.", price));
}

public static void main(String[] args) {
printCoffeePrice(1); // "가격은 3000원 입니다." 출력
printCoffeePrice(99); // NullPointerException 발생
printCoffeePrice(CoffeeType.AMERICANO); // "가격은 3000원 입니다." 출력
printCoffeePrice(CoffeeType.CAFE_LATTE);
//printCoffeePrice(99); // NullPointerException 발생
}
}
1 change: 1 addition & 0 deletions src/main/java/Problem/sunny/Chapter4/Q01.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,6 @@ public static void main(String[] args) {
}

// TODO: 코드의 출력 결과가 무엇일지 생각해보기
// everywhere
}
}
9 changes: 9 additions & 0 deletions src/main/java/Problem/sunny/Chapter4/Q02.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,14 @@ public class Q02 {
*/
public static void main(String[] args) {
// TODO: while 문을 사용해서 1부터 1000까지의 자연수 중 3의 배수의 합을 구하기
int i = 1;
int sum = 0;
while (i <= 1000){
if ((i%3) == 0){
sum += i;
}
i++;
}
System.out.println(sum);
}
}
5 changes: 5 additions & 0 deletions src/main/java/Problem/sunny/Chapter4/Q03.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,12 @@ public class Q03 {
*/
public static void main(String[] args) {
// TODO: while문 또는 for 문을 사용하여 다음과 같이 별(*)을 표시하는 프로그램을 작성해 보자.
String stars = "";

for (int i=0; i<5; i++){
stars += "*";
System.out.println(stars);
}
//*
//**
//***
Expand Down
3 changes: 3 additions & 0 deletions src/main/java/Problem/sunny/Chapter4/Q04.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,8 @@ public class Q04 {
*/
public static void main(String[] args) {
// TODO: for문을 사용해 1부터 100까지의 숫자를 출력해 보자.
for (int i=1; i<=100; i++){
System.out.println(i);
}
}
}
7 changes: 7 additions & 0 deletions src/main/java/Problem/sunny/Chapter4/Q05.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,5 +9,12 @@ public static void main(String[] args) {
int[] marks = {70, 60, 55, 75, 95, 90, 80, 80, 85, 100};

// TODO: for each 문을 사용하여 A 학급의 평균 점수를 구해 보자.
int sum = 0;
float result = 0;
for (int score : marks){
sum += score;
}
result = sum / 10;
System.out.println(result);
}
}

0 comments on commit 8c2aa0b

Please sign in to comment.