2017-03-03 2 views
-5

왜이 출력을 얻습니까? 0 1 2 3 0 1 2 3 0 1 아래 코드를 실행 한 후에? 모듈러스 연산은 한 숫자를 다른 숫자로 나눈 나머지를 찾지 못합니까?C++에서 계수 연산은 어떻게 작동합니까?

#include <iostream> 
using namespace std; 
int main() 
{ 
for (int i=0; i< 10; ++i) 
cout << i % 4 << " "; 
} 
+3

를 읽을 수 있습니다. – bejado

+3

** - 1 ** 질문하기 전에 어떤 연구를하셨습니까? –

+0

googled ..... – Jack

답변

1

예, 모듈러스가 작동하는 방식입니다. 출력이 정확합니다.

0 % 4 = 0 
1 % 4 = 1 
2 % 4 = 2 
3 % 4 = 3 
4 % 4 = 0 
5 % 4 = 1 
... 

가능한 한 많은 수를 제거하십시오. 남은 것은 모듈러스입니다.

1

Modulus 연산자는 첫 번째 숫자를 두 번째 숫자로 나눈 후 나머지를 으로 반환합니다.

0 % 4 = 0 
1 % 4 = 1 
2 % 4 = 2 
3 % 4 = 3 
4 % 4 = 0 
5 % 4 = 1 
6 % 4 = 2 
7 % 4 = 3 
8 % 4 = 0 
9 % 4 = 1 
1

이 있습니다.
0/4 = 0 나머지 0
1/4 = 0 나머지 1
등등.

4

답변은 정확합니다. '%'는 '미리 알림'을 의미합니다. % 연산자는 나머지 연산자입니다. "나는 정수 연산을 사용하여 B하여 분할하면 나머지는 어떤 것?"는 A % B 연산자는 실제로 질문에 대답

배당 = 지수 * 음수를 들어 제수 + 나머지

0 % 4 = 0 
1 % 4 = 1 
2 % 4 = 2 
3 % 4 = 3 
4 % 4 = 0 
5 % 4 = 1 
..... 
etc.. 

... 나머지 연산자

1 % (-4) = 1 
(-2) % 4 = -2 
(-3) % (-4) = -3 

에게, 결과의 부호는 동일 배당

의 표시로 당신은 어떻게 계수 작품의 예를 더에서 What's the difference between “mod” and “remainder”?