random

C++¿¡¼­ ·£´ý°ªÀ» ¾ò¾î ¿Ã·Á¸é º¸ÅëÀº ´ÙÀ½Ã³·³ »ç¿ëÇÑ´Ù.

num = lowst + rand() % range

% ¿¬»êÀÚ¸¦ »ç¿ëÇϸé Á¤±ÔÈ­°¡ ¸¸Á·½º·´Áö ¾Ê´Ù°í ÇÏ´õ¶ó~~~ (Áõ¸íÇÒ ¼ö ¾øÀ¸´Ï)
±×·¡¼­ ´ÙÀ½°ú °°ÀÌ ÇÑ¸é µÈ´Ù°í ÇÏ´õ¶ó....

num =  lowest+int( range*rand()/(RAND_MAX + 1.0) )

À§ÀÇ °ø½Ä¿¡¼­ (RAND + 1.0) ¿Ö, 1Àº ´õ ÇØÁÖ´Â °É±î???
À̹øÀåÀº ÇÏ´õ¶ó·Î ³¡³» ¹ö·È´Ù. Áõ¸í°ú ÀÌÇØ°¡ ¾ÈµÇ´Ï, ´©°¡ 1À» ¿Ö ´õ ÇÏ´ÂÁö ¹°¾îº¸¸é ÇÒ¸»ÀÌ ¾ø´Ù.

¾Æ½Ã´Â ºÐÀº ÀÚ¼¼ÇÏ°Ô ¼³¸íÁ» ºÎŹ µå¸³´Ï´Ù.
dreamcast@naver.comÀ¸·Î ¸ÞÀÏ ÁÖ¼¼¿ä.

#include <time.h>

#include <iostream>

 

int main()

{

    srand((unsigned)time(0));

    int lowest = 1, highest = 10;

    int range=(highest-lowest)+1;

 

    for(int k = 0; k < 10; k++)

    {   

        int num =  lowest+int( range*rand()/(RAND_MAX + 1.0) );

        std::cout << num << std::endl;

    }

    return 0;

}

ÂüÁ¶:
http://3dprog.tistory.com/m/18
http://www.daniweb.com/software-development/cpp/threads/1769/c-random-numbers
http://minamjun11.egloos.com/m/1252450