kms1212   1년 전

컴파일러의 문제인지 근래들어 제출하는 문제마다 DivByZero Exception이 발생합니다. 발생하는 원인을 찾을 수 있다면 좋겠으나.. 로컬 컴퓨터에서는 문제에서 제시한 값들의 범위 안에 있는 모든 수를 대입해봐도 예외가 발생하질 않아서 해결할 수가 없습니다. 이런 경우에는 어떻게 해결해야 하나요?

알고리즘은 4개의 범위로 쪼개 재귀로 해결하는 형식의 알고리즘입니다,

seawon0808   1년 전

나누는 수가 0일 때 특별히 처리를 해주시면 될 것 같습니다.

chldn323   1년 전

28번 줄에 x%(sz/2)에서 sz가 1이면 x%0입니다.

kms1212   1년 전

13번째줄의 sz == 0부분을 1로 고쳐서 해결했습니다!

그런데 지금까지 오류 발견이 안 됐던 거는 컴파일러의 문제였던 건가요?

seawon0808   1년 전

dev c++로 컴파일 해보면 sz에 1이 들어갔을 때 에러가 납니다.

kms1212   1년 전

dev-c++면 gcc 컴파일러일 테니 컴파일러별로 0으로 나누기의 동작은 다른가 봅니다.

답변주셔서 감사합니다!

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