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
|