그래서 저는 쓰고있는 함수의 일부로 모듈러스와 랜드를 사용하고 있습니다.rand 연산자를 사용한 계산
rand() % 6 + 1;
나에게 하나이 상황에서 여섯 사이의 임의의 숫자를 제공합니다 : 지금, 나는 이해합니다. 그러나 나는 또한
rand();
0에서 나에게 임의의 값을주는 것을 알고있다 - 32767 및 srand;
시퀀스
을 변경하지만 난 ... a
의 나머지 a/b
후 뭐든간에
%
rand() % 6 + 1;
을 중단한다면
... 그래서, 그것은 무엇과 같을 것이다?
어떤 임의의 번호/6 = 나머지는 무작위에서 남은 :
은 내가 이런 식으로 rand() % 6 + 1;
에 보이기 때문에 내 자신의 이익을 위해 이것의 의미를 확인해야합니다. 그런 다음 추가하십시오.
그래서, 내 질문은 두 배입니다 :
1-32767 - 대신 0에서 숫자의 스펙트럼 갑자기 5 모든 - 방법 단지 1에 제한받을 rand()
는 무엇입니까?
2-6로 나눈 그 숫자 (1-5)의 상관 당신에게 분수, 전체가 아닌 하나를주고 내가 계수는 정수와 함께 작동 생각했다. 어떤 정보가 여기에 누락 되었습니까? 당신이 볼 수 있듯이
나는 이것에 대해 혼란 스러워요. 도움말 항상 알 수있다 :
고마워요! 나는 난수가 1 인 경우 어떻게 재생 될지 궁금해했다. 1/6 = 0.16 이후로 어떻게 될까? – Jason
rand()가 1을 생성하면 1 % 6은 1입니다. 1을 6으로 나누면 지수는 0이되고 미리 알림은 1이됩니다. –