문제풀다가 생각지도 못한 이런것에 쓸대없이 시간잡아먹혔어..
-
음수는 %연산자가 어떻게 동작할까?공부/C++ 2019. 8. 29. 19:15
이 글은 짝수 홀수를 구분하려고 코드를 간단히 짜다가 생각지 못한 일이 발생하여 쓰게 되었다. 홀수 짝수 구분을 하라고 하면 간단하게 num % 2 를 통해서 나머지 연산하고 이게 1이면 홀수고 0이면 짝수겠지... 하고 작성을 했지만, 문제의 test set에는 음수도 존재하였다. 사실 음수를 생각하지도 못한 나도 문제지만, 생각을 하고서도 왜 문제가 생기는지 바로 모르는게 더 문제... 또 음수로 수를 나눈다면 어떻게될까? 막상 컴퓨터가 나눗셈을 어떻게 하는지, 연산을 어떻게 하는지 와 같은 내용을 배워놓고서는 다 말아먹어버린 내 두뇌에 다시한번 감탄의 박수를 보낸다. 서론이 길었으니 간단하게 결과만 적어두자. a%b 1. 나눗셈을 할 때 음수 양수를 고려하지 않고, a,b 모두 양수로 사용하여 나머..