Java · 예외·연습 문제

예외 처리 흐름

문제 설명PROBLEM

예외 처리 흐름

문제

두 정수의 나눗셈을 시도하고, 0으로 나눈 경우를 catch하며, 어느 경우에도 finally의 완료 표시를 붙이세요.

구현할 함수

static String safeDivisionTrace(int a, int b)

입력

한 줄에 정수 a와 b가 공백으로 주어집니다.

입력 파싱과 결과 출력은 숨겨진 I/O 어댑터가 자동으로 처리합니다. 에디터에는 요구된 함수 또는 메서드 구현만 작성하세요.

출력

정상일 때 '몫 DONE', 0으로 나눌 때 'ERROR DONE'을 출력합니다.

구현 조건

  • try 블록 안에서 a / b를 계산하세요.
  • ArithmeticException을 catch해 ERROR를 기록하세요.
  • finally 블록에서 DONE을 기록하세요.

공개 테스트

아래 테스트를 각각 독립된 프로세스로 실행합니다. 입력과 기대 출력은 실제 채점 순서와 같습니다.

#이름InputExpected output
1정상 나눗셈10 25 DONE
20으로 나눔10 0ERROR DONE
3음수 몫-7 3-2 DONE
개념 노트와 실수 포인트

예외 처리

  • 흐름: try 에서 예외 발생 → 이후 코드 건너뛰고 맞는 catch 로. finally 는 (return 이 있어도) 항상 실행.
  • 예: 10/0ArithmeticException, 잘못된 인덱스 → ArrayIndexOutOfBoundsException.
  • ⚠️ 출력 순서 문제 단골 — 예외 발생 지점 이후 try 코드는 실행 안 됨.