알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄

https://level.goorm.io/exam/43094/%EC%8B%9C%ED%97%98%EC%84%B1%EC%A0%81-%ED%8F%89%EA%B7%A0%EA%B3%BC-%EB%93%B1%EA%B8%89-%EA%B5%AC%ED%95%98%EA%B8%B0/quiz/1

 

구름LEVEL

코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이

level.goorm.io


Think🤔

시험 성적의 평균과 등급 값을 나오게 하면 되는 문제이다.

 

그리고 입력이 띄어서 하나씩 과목이 들어오는데

이것을 split로 쪼개서 str에 담아주고 str 배열에 있는 값을 국어,수학,영어에 담아준다.

그리고 double형으로 해야되는데 3으로 나눴을 때 소수점 두자리 까지 나와야 하기 때문

 

성적 grade는 char로 받는데 초기화를 '\u0000' 또는 ' ' 띄어서 해줘야 한다.

 

그리고 switch문에 (int)average/10으로 설정해두고 

case 10 : case 9 : 이렇게는 'A'이고 나머지는 6까지 D를 해주고 default로 받아주는 것이 좋음

 

그리고 소수점 둘 째 짜리까지 출력하려면

System.out.printf를 썼을때 %.2f를 통해서 받는다.


Solution✍
import java.io.*;

class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String input = br.readLine();
		String[] str = input.split(" ");
		
		double korean = Double.parseDouble(str[0]);
		double math = Double.parseDouble(str[1]);
		double english = Double.parseDouble(str[2]);
		
		double average = (double)((korean + math + english) / 3);
		
		char grade = ' '; // char는 초기화 방법이 공백을 띄우거나 '\u0000'; 로 선언해줘야한다.
		
		switch((int)average/10){
			case 10 :
			case 9 : grade = 'A'; break;
			case 8 : grade = 'B'; break;
			case 7 : grade = 'C'; break;
			case 6 : grade = 'D'; break;
			default : grade = 'F';
		}
		
		System.out.printf("%.2f %s", average , grade);
	}
}

Review🤩

break 문을 넣어줌으로써 다 검사하지 않고, 또 char형으로 초기화 할때 ' ' 띄어쓰거나 '\u0000' 를 써야 한다는 것을 알게되었고,

printf에 대해서 정리해보자면..

 

%n : 줄바꿈

%s : String 형식으로 출력

%d : integer 형식으로 출력

%f : float 형식으로 출력

%t : date,time 형식으로 출력

%o : 8진수 integer 형식으로 출력

%x : 16진수 integer 형식으로 출력

%b : boolean 형식으로 출력

%e : 지수형식으로 출력

 

등이 있다.


 

'Algorithm' 카테고리의 다른 글

[구름] Bubble Sort  (0) 2021.12.25
[구름] 369 게임  (0) 2021.12.25
[구름] 약수 구하기  (0) 2021.12.25
[구름] 3과 5의 배수  (0) 2021.12.25
[구름] 홀짝 판별  (0) 2021.12.25

+ Recent posts