programing

더 작은 배당과 더 큰 분배의 모듈러스는 어떻게 작동합니까?

yellowcard 2023. 10. 27. 21:50
반응형

더 작은 배당과 더 큰 분배의 모듈러스는 어떻게 작동합니까?

7 % 3 = 1 (remainder 1)

어쩌죠?
3 % 7(remainder?)

일?

나머지 3/7은 3..나머지 3개로 0번을 했기 때문에 3%7 = 3

7은 3에 들어가는 거야? 0번이고 3번 남았어요.

몫은 0입니다.나머지(modulus)는 3입니다.

개념적으로 저는 이렇게 생각합니다.정의에 따라 배당금은 다음과 같아야 합니다.(quotient * divisor) + modulus

또는 모듈러스에 대한 풀이:modulus = dividend - (quotient * divisor)

배당금이 분배수보다 적을 때마다, 몫은 항상 0이고, 모듈러스는 단순히 배당금과 같아집니다.

OP 값으로 설명하기

modulus of 3 and 7 = 3 - (0 * 7) = 3

다른 값으로 설명하기

1 % 3:
1 - (0 * 3) = 1

2 % 3:
2 - (0 * 3) = 2

같은 방법.몫은 0(3 / 7, 분수 부분은 버려짐)입니다.나머지는 다음을 만족합니다.

(a / b) * b + (a % b) = a
(3 / 7) * 7 + (3 % 7) = 3
0 * 7 + (3 % 7) = 3
(3 % 7) = 3

이는 C99 §6.5.5, 곱셈 연산자에 정의되어 있습니다.

  • 7을 3으로 나눈 값은 2이고 나머지는 1입니다.

  • 3을 7로 나눈 값은 0이고 나머지는 3입니다.

둘 다 긍정적이기만 하면 나머지는 배당금과 같아집니다.하나 또는 둘 다 부정적이면, 당신은 다음과 같이 상기됩니다.%모듈러스 연산자가 아닌 나머지 연산자입니다.모듈러스는 항상 양수이지만 나머지는 음수일 수 있습니다.

(7 * 0) + 3 = 3; 따라서 나머지는3.

% q = r은 q * x + r = a가 되도록 x가 있음을 의미합니다.

따라서 7 % 3 = 1 이므로 3 * 2 + 1 = 7,

그리고 3 % 7 = 3 이므로 7 * 0 + 3 = 3

기억해야 할 가장 간단하고 효과적인 캐치는 다음과 같습니다.배당금분배금보다 적을 때마다 모듈러스는 그 배당금일 뿐입니다.

다음을 공식화해 보겠습니다.

if x < y, then x % y = x 

만약 분할자가 더 작고 부정적이라면, 이 놀라운 경우를 언급하는 것을 잊어버린 것 같습니다.

-3 % 7 

result: 4

제 뇌가 이런 질문을 이해할 수 있도록 항상 실제 물체로 변환합니다. 예를 들어 3% 7의 질문을 변환하면 "3"3인치 너비의 금속 구멍으로, "7"7인치 금속 나사로 표현할 것입니다.7인치 금속 나사3인치 너비의 금속 구멍에 삽입할 수 있습니까?물론 아닙니다. 따라서 답은 3인치 금속 구멍이어야 합니다. 1,000인치 또는 100만인치 너비 나사가 있다고 해도 상관없습니다. 1,000인치 또는 100만인치 너비 나사를 3인치 너비 금속 구멍에 몇 번이나 삽입할 수 있습니까?0번이죠?

언급URL : https://stackoverflow.com/questions/3622298/how-does-modulus-of-a-smaller-dividend-and-larger-divisor-work

반응형