Logo
(追記) (追記ここまで)

런타임에러 (division by zero)

5086번 - 배수와 약수

이 코드가 (division by zero) 가 뜨는 것의 이유는

만약 a는 아무 숫자, b는 0일 때

첫 번째 if문의 a % b == a 연산을 하다가 (b가 0인데 나누려고해서)그런 문제가 생긴 것으로 이해했습니다.

그렇다면 그 아래에 주석으로 되어있는 식도 문제가 되는 거 아닌가요?

if (x == 0 && y == 0) {
break;
}

if (y % x == 0) {

else if (x % y == 0) {

이 부분 보면 x가 0이고 y가 0이 아닐 때

첫 번째 if 문에서 0으로 나누는 꼴이 되기에 이것도 런타임에러가 떠야하는 거 아닌가요?

이 문제에서 자연수는 1 이상인 것으로 생각됩니다.

마지막 줄에 있는 0 0을 처리하는 순서의 문제입니다.

댓글을 작성하려면 로그인해야 합니다.

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /