Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Как генерировать числа из указанного диапазона?


Автор: Mister U 23.3.2006, 18:55
Мне нужно сгенерировать число из диапазона [-100;100]
Как это осуществить?

Автор: NextAlex 23.3.2006, 19:00
http://www.daniweb.com/techtalkforums/thread1769.html

Автор: threef 23.3.2006, 20:28
rand()%(max-min+1)+min

Автор: np9mi7 24.3.2006, 08:35
boost::uniform_real - continuous uniform distribution on some range [min, max) of real numbers, for the range [0, 2pi): randomly dropping a stick and measuring its angle in radiants (assuming the angle is uniformly distributed);

Автор: threef 24.3.2006, 11:08
Код


#define REALRAND(min,max,double_precision) \
(rand()%(int)((max)/(double_precision)-(min)/(double_precision))+1)\
-(min)/(double_precision)) *(double_precision)


//example
for(int i=0;i<10;i++)
     cout<<REALRAND(0, 1, 0.000001);


Существует масса интересных библиотек с уймой хороших или почти хороших функций. Когда-нибудь они умирают, появляются новые, появляются фанаты этих библиотек, языков и т.п. Просто некоторые вещи надо научиться делать самому. Иначе превращаешься в компилятора(читай БСЭ).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)