Computational Intelligence/Evolutionary Computation

0~1까지의 난수의 생성

초인로크 2013. 5. 19. 13:56
반응형

include <stdlib.h>


double random_number(){

return ((double)(rand()%RAND_MAX)/(double)RAND_MAX);

// return (double)rand()/(double)RAND_MAX 을 해도 같은 결과가 나옴.

}


rand() : 0에서 RAND_MAX까지의 자연수를 랜덤하게 불러낸다. stdlib.h를 include로 불러낼 필요가 있음.

RAND_MAX: Xcode에서 불러내본 결과 2147483647이 나왔다. int로 선언될 수 있는 최대값인데 시스템 마다 다를수도?


・srand(time(NULL)); //난수의 초기화

난수의 생성이란 컴퓨터에 있는 난수표를 불러내는 것이기 때문에 난수표를 매번 다른것을 불러내지 않으면 고정된 값이 나올수가 있다.  따라서 현재 시간에 의존해서 난수표를 불러내면 좀더 난수에 근사한 값이 나온다.


 

반응형