Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 17, средняя оценка - 4.76
GARFT
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 25
#1

Как ограничить функцию rand()? - C++

15.01.2013, 23:48. Просмотров 2635. Ответов 7
Метки нет (Все метки)

Как ограничить функцию rand()? К примеру, если надо число рандомное от -11.1 до 20.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2013, 23:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как ограничить функцию rand()? (C++):

Как модернизировать функцию rand, что бы числа генерировались на заданом промежутке от a до b ? - C++
Как модернизировать функцию rand, что бы числа генерировались на заданом промежутке от a до b ?

Заполнить матрицу случайными числами не используя библиотечную функцию rand - C++
Здравствуйте!!! У меня есть такое задание не могу решать может поможете?? Случайные целые числа в диапазоне от - 32768 до 32678 можно...

Как задать диапазон rand - C++
Как задать диапазон rand например от 3 до -5?

Как работать с функцией rand() - C++
Помогите сделать так, чтобы rand() каждый раз выкидывал неповторяющиеся значения.

Как пользоваться функцией rand()? - C++
Все привет. Пытаюсь пользоваться функцией rand(), а получаю сообщение Это разве идентификатор? #include "stdafx.h" ...

Как увеличить диапазон rand()? - C++
нужно заполнить оочень большой массив оочень большими числами. нигде не нашел ответа на этот вопрос. rand()%+любое число больше 32767 не...

7
Ласковая Киса
82 / 8 / 1
Регистрация: 11.01.2013
Сообщений: 55
15.01.2013, 23:50 #2
C++
1
min+rand()%max;

C++
1
-11.1+rand()%20;
как-то так
0
coloc
погромист
410 / 246 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
15.01.2013, 23:50 #3
Вот готовая функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
int random (int min, int max)
{
    srand ( time (NULL) + rand() );
        
    int temp = max - min;
    
    if (temp == 0)
       temp = 1;
    
    int value = rand() % temp + min;
    return value;
}
0
Issues
430 / 365 / 37
Регистрация: 06.08.2012
Сообщений: 961
15.01.2013, 23:52 #4
rand() % 20 + (-11.1);
0
GARFT
0 / 0 / 0
Регистрация: 15.11.2012
Сообщений: 25
15.01.2013, 23:58  [ТС] #5
Цитата Сообщение от Ласковая Киса Посмотреть сообщение
C++
1
min+rand()%max;

C++
1
-11.1+rand()%20;
как-то так
И

Цитата Сообщение от SeregaC++ Посмотреть сообщение
rand() % 20 + (-11.1);
всегда -10.1 ответ





Цитата Сообщение от coloc Посмотреть сообщение
Вот готовая функция
C++
1
2
3
4
5
6
7
8
9
10
11
12
int random (int min, int max)
{
    srand ( time (NULL) + rand() );
        
    int temp = max - min;
    
    if (temp == 0)
       temp = 1;
    
    int value = rand() % temp + min;
    return value;
}
Только такой вариант или же можно как-то ограничеть максимальное и минимальное значение rand() более простым способом?
0
FreeMinder
36 / 36 / 2
Регистрация: 29.08.2012
Сообщений: 59
16.01.2013, 00:01 #6
C++
1
2
3
4
// генерим дробную часть
double dec = (rand()%9+1) * 0.1;
// генерим целое и добавляем дробную
double random = rand()%31 - 11 + dec;
Добавлено через 1 минуту
GARFT,
C++
1
#include<ctime>
и где нибудь в main
C++
1
srand(time(NULL));
0
go
Эксперт С++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
16.01.2013, 00:48 #7
<random>
0
MrGluck
Модератор
Эксперт CЭксперт С++
7278 / 4439 / 650
Регистрация: 29.11.2010
Сообщений: 12,017
16.01.2013, 00:54 #8
#include<ctime>
srand требует также
C++
1
#include <cstdlib>
а как же приятно использовать все-таки готовые решения из С++11 std::uniform_real_distribution<>(), std::uniform_int_distribution<>()
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.01.2013, 00:54
Привет! Вот еще темы с ответами:

Как заполняет функция rand? - C++
Как заполняет функция rand? Допустим у нас есть вот такое: rand()%10; rand()%100-50; rand()%20-20; В каком диапазоне будут...

rand() работает не так как нужно - C++
Запускается n потоковых функций, каждый из них приостанавливается во время своего выполнения, а в главное программе должен перезапускаться....

Rand() как именно генерируются эти числа - C++
Функция rand(). Мне для ответа по ОПИ мало сказать что она возвращает псевдослучайные числа от 0 до RAND_MAX. Надо рассказать как именно...

Как написать эту программу через rand? - C++
#include &lt;iostream&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; int max(int x); int main () {...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Yandex
Объявления
16.01.2013, 00:54
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru