제가보는 교재내용중
"나머지 연산자를 사용할때 결과값의 부호는 두번째 연산자의 부호와 일치한다"
>>> -17 % 10
3
>>> 17 % -10
-3
위와같이 나와있는데요. 나머지 값이 왜 3인지 이해가 안갑니다.
오늘 시작한 생초보 입니다. 어리석은 질문이더라도 양해부탁드립니다.
-17 = -2 * 10 + 3
나머지 연산의 피연산자가 음수일 때는 연산 결과가 수학적으로 정해져 있지 않습니다. 그래서 프로그래밍 언어마다 결과가 다릅니다.
http://en.wikipedia.org/wiki/Modulo_operation
C나 포트란의 경우에는 17 % -10이 7이 됩니다. 각 언어의 매뉴얼을 볼 수 밖에 없습니다. Python의 경우에는 아래 문서를 참고하세요.
https://docs.python.org/2/reference/expressions.html#binary-arithmetic-operations
feel the gravity
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
-17 = -2 * 10 + 3
-17 = -2 * 10 + 3
나머지 연산의 피연산자가 음수일 때는 연산 결과가
나머지 연산의 피연산자가 음수일 때는 연산 결과가 수학적으로 정해져 있지 않습니다. 그래서 프로그래밍 언어마다 결과가 다릅니다.
http://en.wikipedia.org/wiki/Modulo_operation
C나 포트란의 경우에는 17 % -10이 7이 됩니다. 각 언어의 매뉴얼을 볼 수 밖에 없습니다. Python의 경우에는 아래 문서를 참고하세요.
https://docs.python.org/2/reference/expressions.html#binary-arithmetic-operations
feel the gravity
댓글 달기