Автор Владимир Соловейчик задал вопрос в разделе Другие языки и технологии
С++ Random(); Random(); Как задать диапазон значений от -100 до 100? и получил лучший ответ
Ответ от Вадим Тукаев[гуру]
int x = rand() % 201 - 100;
Ответ от Sasha Programmer[гуру]
int a,b,c;
a = - 100; b = 100;
c = rand() % (b - a + 1) + a;
int a,b,c;
a = - 100; b = 100;
c = rand() % (b - a + 1) + a;
Ответ от ZZZ0oO1Z[гуру]
Дополнительно, C++11 и выше:
#include <iostream>
#include <random>
int main()
{
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(-100, 100);
for (int n=0; n<10; ++n)
std::cout << dis(gen) << ' ';
std::cout << '
';
}
Там "надежнее" будут случайные числа, пользоваться в некоторых случаях удобнее (если много работаете с псевдослучайными числами и если руку набить) , и если стандарт не слишком новый для Вас.
Пока что подобный подход - редкость, но уже рекомендуется иметь о нем представление.
Дополнительно, C++11 и выше:
#include <iostream>
#include <random>
int main()
{
std::random_device rd;
std::mt19937 gen(rd());
std::uniform_int_distribution<> dis(-100, 100);
for (int n=0; n<10; ++n)
std::cout << dis(gen) << ' ';
std::cout << '
';
}
Там "надежнее" будут случайные числа, пользоваться в некоторых случаях удобнее (если много работаете с псевдослучайными числами и если руку набить) , и если стандарт не слишком новый для Вас.
Пока что подобный подход - редкость, но уже рекомендуется иметь о нем представление.
Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: С++ Random(); Random(); Как задать диапазон значений от -100 до 100?