[백준/자바] 25206번: 너의 평점

솔솔·2023년 9월 16일
0

[백준] 알고리즘

목록 보기
1/6
post-thumbnail


📑 문제 설명

인하대학교 컴퓨터공학과를 졸업하기 위해서는, 전공평점이 3.3 이상이거나 졸업고사를 통과해야 한다. 그런데 아뿔싸, 치훈이는 깜빡하고 졸업고사를 응시하지 않았다는 사실을 깨달았다!
치훈이의 전공평점을 계산해주는 프로그램을 작성해보자.

전공평점은 전공과목별 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값이다.
인하대학교 컴퓨터공학과의 등급에 따른 과목평점은 다음 표와 같다.

P/F 과목의 경우 등급이 P또는 F로 표시되는데, 등급이 P인 과목은 계산에서 제외해야 한다.
과연 치훈이는 무사히 졸업할 수 있을까?



🧑🏻‍💻 나의 풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	
	public static void main(String[] args) throws IOException {
			InputStreamReader isr = new InputStreamReader(System.in);
			BufferedReader br = new BufferedReader(isr);

			double creditSum = 0;
			double sum = 0;
			
			for(int i=0;i<20;i++) {
				String str = br.readLine();
				
				String grade = str.substring(str.lastIndexOf(" ")+1);
				String creditStr = str.substring(str.indexOf(" ")+1,str.lastIndexOf(" "));
				Double credit = Double.parseDouble(creditStr);

				switch(grade) {
					case "A+": sum += credit*4.5; break;
					case "A0": sum += credit*4.0; break;
					case "B+": sum += credit*3.5; break;
					case "B0": sum += credit*3.0; break;
					case "C+": sum += credit*2.5; break;
					case "C0": sum += credit*2.0; break;
					case "D+": sum += credit*1.5; break;
					case "D0": sum += credit*1.0; break;
					case "F": sum += credit*0.0; break;
					default: continue;
				}
				
				creditSum += credit;
			}
			
			double average = sum/creditSum;
			System.out.println(average);
			br.close();
	}
}



🔗 문제 링크

https://www.acmicpc.net/problem/25206

0개의 댓글