코딩을 하다보면 여러 경우 임의의 수, 즉 난수를 발생시키고 싶을 경우가 있다. 이를 가장 쉽게 할 수 있는 것은 rand() 함수를 사용하는 것이다.
#include <math.h>
를 해주고,
int strart_number = 0, end_number = 100;
int random_number = (rand() % (end_number-start_number+1)) + start_number;
로 해주면 된다.
다만 이때 주의할 점은 이 함수가 처음 불리기 전에, 혹은 MFC라면 OnInitDialog에서
srand( (unsigned int)(time(NULL)) );
를 호출해주는 것이다. 이렇게 해줘야 랜덤을 위한 난수표(seed)를 랜덤하게 골라서 진정한 난수를 발생시킬 수 있는 것이다.
<정리>
#include <math.h>
#include <time.h>
int main()
{
srand( (unsigned int)(time(NULL)) );
int strart_number = 0, end_number = 100;
for(int i=0; i<100; i++)
{
int random_number = (rand() % (end_number-start_number+1)) + start_number;
TRACE("Random number: %d", random_number);
}
}
위와 같이 해주면 100개의 0과 100 사이의 난수를 형성할 것이다. 아마.
'Enginius > C / C++' 카테고리의 다른 글
[퍼옴] MFC에서 시리얼 통신 프로그램 작성하기. (2) | 2012.04.24 |
---|---|
[MFC] BITMAP 으로 그림 그리기 (4) | 2012.04.24 |
console로 print할 때 주의사항 (0) | 2012.03.26 |
linked list class (0) | 2012.03.23 |
Variance Estimator (0) | 2012.02.19 |