Intereting Posts

Генерировать случайное значение между [0, 1)

Я хочу создать случайное значение с плавающей точкой от 0 до 1, исключая 1, т. Е. [0, 1) . Я много искал, но я не мог найти ответа на этот вопрос. Я пробовал следующий трюк, однако он генерирует отрицательные значения

 (double)rand()/(double)RAND_MAX-1; 

Вам просто нужно разделить RAND_MAX, включая +1. Как это:

 (double)rand()/((double)RAND_MAX+1); 

Вам нужны скобки для правильного порядка:

 (double)rand()/((double)RAND_MAX + 1); 

Также обратите внимание, что вам нужен +1, а не -1.