Как генерировать случайное целое число из диапазона

Это - следование на на от ранее отправленного вопроса:

Как генерировать случайное число в C?

Я хочу смочь генерировать случайное число из конкретного диапазона, такой как 1 - 6 для имитации сторон умирания.

Как я пошел бы о выполнении этого?

103
задан myradio 3 April 2018 в 16:26
поделиться

2 ответа

unsigned int
randr(unsigned int min, unsigned int max)
{
       double scaled = (double)rand()/RAND_MAX;

       return (max - min +1)*scaled + min;
}

Другие варианты см. здесь .

17
ответ дан 24 November 2019 в 04:16
поделиться

Не могли бы вы просто сделать:

srand(time(NULL));
int r = ( rand() % 6 ) + 1;

% - оператор модуля. По сути, он просто разделится на 6 и вернет остаток ... от 0 до 5

12
ответ дан 24 November 2019 в 04:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: