>  기사  >  Java  >  다음은 질문 형식을 활용한 몇 가지 제목 옵션입니다. * **Java에서 -13 % 64가 51이 아닌 이유는 무엇입니까?** (간단하고 직접적) * **Java 모듈러스 연산자 및 음수: 예상 결과를 얻는 방법

다음은 질문 형식을 활용한 몇 가지 제목 옵션입니다. * **Java에서 -13 % 64가 51이 아닌 이유는 무엇입니까?** (간단하고 직접적) * **Java 모듈러스 연산자 및 음수: 예상 결과를 얻는 방법

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-25 12:17:30207검색

Here are a few title options, playing with the question format:

* **Why is -13 % 64 not 51 in Java?**  (Simple and direct)
* **Java Modulus Operator and Negative Numbers: How to Get the Expected Result?** (More descriptive, highlights the challenge)
* **

Java에서 음수를 사용한 계수 계산

Java에서 계수 연산자(%)는 두 숫자를 나눈 나머지를 반환합니다. 그러나 음수를 처리할 경우 결과가 예상과 다를 수 있습니다.

문제:

개발자가 음수로 모듈러스 계산을 수행할 때 예기치 않은 결과가 발생합니다. 특히 -13 % 64. 원하는 결과 51 대신 결과는 -13입니다.

설명:

음수의 모듈러스 정의는 프로그래밍마다 다릅니다. 언어. Java에서는 모듈러스 연산자가 반환하는 나머지가 피제수(분자)와 동일한 부호를 갖습니다. 따라서 -13 % 64는 -13으로 평가됩니다.

해결책:

원하는 결과인 51을 얻으려면 다음 수정을 적용할 수 있습니다.

<code class="java">int r = x % n;
if (r > 0 && x < 0) {
    r -= n;
}</code>

이 코드는 배당금이 음수일 때 나머지가 양수가 되도록 보장합니다.

또는 언어가 음수 입력에 대해 음수 나머지를 반환하고 개발자가 양수 결과를 선호하는 경우 다음 조정이 가능합니다. made:

<code class="java">int r = x % n;
if (r < 0) {
    r += n;
}</code>

이 코드는 음수 나머지를 양수 값으로 변환합니다.

위 내용은 다음은 질문 형식을 활용한 몇 가지 제목 옵션입니다. * **Java에서 -13 % 64가 51이 아닌 이유는 무엇입니까?** (간단하고 직접적) * **Java 모듈러스 연산자 및 음수: 예상 결과를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.