본문 바로가기
JavaScript/이론 및 용어

음수의 나머지 계산법

by tokkiC 2022. 9. 26.

음수를 모듈러 연산자 % 로 연산 할때는

음수에 나눌 숫자의 배수를 더해서 양수로 만들어 줘야한다

더해도 나눌 숫자의 배수를 더한거니 나머지의 값은 같기 때문에 걱정 안 할 필요는 없다

let ans = -3 mod 8;

위의 경우 나눌 수가 -3으로 음수이므로 나누는 숫자인 8의 배수를 아무거나 더해서 (1배수든... 2배수든...)

양수로 만들어 주자. 8의 1배수 8을 더해보자

let ans = (-3 + 8) mod 8;    
let ans = 5 mod 8;
console.log(ans);     // 5

위와 같은 방법으로 음수도 %모듈러 연산자로 연산 가능하다

어쩐지 모듈러 연산 출력 예시가 이상하다 했다...

모듈러의 음수를 해결해도 문제가 에러가 난다면, 큰 수를 처리하기 위한 BigInt 등의 사용도 고려해보자

댓글