Programming/C/C++
[C/C++] rand function
Kanais
2015. 4. 16. 10:15
rand 함수는 난수 발생 함수이다.
아래와 같이 srand를 써줘야 난수가 나온다 만일 srand함수를 안쓰고 rand함수만 쓴다면
반환되는 난수값은 일정하다.
srand((unsigned)time(NULL));
아래와 같이 쓰면 0~100 사이의 난수를 num변수에 넣어준다.
int num = rand()%100;
아래와 같이 쓰면 0~100 사이의 난수를 num변수에 넣어준다.
int num = rand()%100;
1.0 ~ 99.99의 난수를 구하는 식
srand((unsigned)time(NULL));
int num = (rand() % 10000);
double result = num / 10.0;
똑같은 수가 선택되지 않게 하는 간단한 소스.
bool checks[MAX*MAX]={false,false,false,false,false,false,false,false,true}; int n=0; int i=0;
XY.x = MAX-1; XY.y = MAX-1; XY.num = MAX*MAX-1; for(i=0;i<(MAX*MAX-1);i++) { while(checks[(n=rand()%(MAX*MAX))]); // 랜덤하게위치부여 puzzle_datas[i/3][i%3] = n; origin_puzzle_datas[i/3][i%3] = n; checks[n] = true; } puzzle_datas[2][2]=8; origin_puzzle_datas[2][2]=8; |