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

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

Войти
Регистрация
Восстановить пароль
 
 
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
#1

Может кто знает как сделать рандом от 0 до 4294967295 - C++

16.06.2016, 02:33. Просмотров 736. Ответов 37
Метки нет (Все метки)

Столкнулся с ограничение в 32 тысячи при рандоме.

C++
1
2
3
4
5
6
7
srand((unsigned int)time(NULL));
unsigned int tmp = 0;
    for (int i = 0; i < 100; i++)
    {
        tmp = 0 + rand() % 4294967295;
..... код
}
ограничение понятно, но как генерить случайные от 0 до 4294967295 ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.06.2016, 02:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Может кто знает как сделать рандом от 0 до 4294967295 (C++):

Может кто знает как составить из этих слов осмысленный текст? - C++
Описание главной функции, оператор цикла while, оператор ввода и вывода строки, увеличение целой переменной на 10

Задания в С++ (Возможно кто знает как сделать) - C++
Задали задания по практике, все сделала кроме С++, т.к. в ней немного не понимаю, помогите пожалуйста кто как может, буду благодарна!)

нужно сделать трассировку. кто-нибудь знает как? - C++
неужели никто не знает как делать трассировку? завтра преподу сдавать все, а я уже который день не могу сделать трассировку. ...

Запутался с IF. Может кто-то знает в чём ошибка? - C++
Программа, нужно ввести значение &quot;х&quot; и &quot;а&quot;, и определить значение функции в зависимости от значения аргумента... Ошибку начинает писать с...

Преобразование времени (double. Может всё-таки кто-нибудь знает) - C++
Как double сделать так, чтобы он работал по такому принципу. К примеру идет число 0,01...0,59 и после 0,59 переходило не в 0,60 , а в...

Где можно посмотреть все функции по работе с динамической памятю в C++ ? Может кто сайт знает - C++
???

37
Леонид1300
3 / 3 / 1
Регистрация: 03.03.2016
Сообщений: 79
16.06.2016, 02:40 #2
Вы имеете ввиду в этом диапазоне чтобы одно число вышла, или как ?
Дайте точный вопрос или же пример
1
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 02:49  [ТС] #3
естественно 1 число от 0 до 4294967295 которое будет присвоено переменной tmp. при таком коде попадают данные с 0 до 32 тысяч

Добавлено через 44 секунды
тут пример у меня цикл который генерит 100 случайных чисел)но они все short)
0
илья9696
120 / 120 / 35
Регистрация: 15.11.2014
Сообщений: 533
Завершенные тесты: 3
16.06.2016, 02:55 #4
А обязательно рандом?
1
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 02:56  [ТС] #5
да естественно
0
palva
3088 / 2222 / 375
Регистрация: 08.06.2007
Сообщений: 8,107
Записей в блоге: 4
16.06.2016, 03:01 #6
А если так?
C++
1
        tmp = rand()<<17 | rand()<<2 | rand() & 3;
3
илья9696
120 / 120 / 35
Регистрация: 15.11.2014
Сообщений: 533
Завершенные тесты: 3
16.06.2016, 03:02 #7
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Загуглил по поводу функции
Функция rand() возвращает целое число от 0 до значения присвоенного константе RAND_MAX. Значение RAND_MAX зависит от системы и определено в заголовочном файле stdlib.h. Так, например, оно может быть равно 32767 (двухбайтовое целое) или 2147483647 (четырехбайтовое целое).
1
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 03:12  [ТС] #8
я уже это гуглил

Добавлено через 1 минуту
код есть рабочий?)
0
илья9696
120 / 120 / 35
Регистрация: 15.11.2014
Сообщений: 533
Завершенные тесты: 3
16.06.2016, 03:14 #9
Ko, palva, скинул неведомая вещь. Просто жесть
1
Миниатюры
Может кто знает как сделать рандом от 0 до 4294967295  
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 03:15  [ТС] #10
этот код конечно супер"tmp = rand()<<17 | rand()<<2 | rand() & 3;
", но тут может быть вообще число 0?
0
meJevin
156 / 148 / 58
Регистрация: 18.11.2015
Сообщений: 674
Завершенные тесты: 1
16.06.2016, 03:15 #11
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ko, так?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <random>
#include <ctime>
 
void main()
{
 
    std::default_random_engine randomEngine(time(0));
 
    std::uniform_int_distribution<unsigned int> randomNumber(0, 4294967295); // (0, std::numeric_limits<unsigned int>::max());
 
    std::cout << randomNumber(randomEngine) << std::endl;
 
    std::cin.get();
 
}
1
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 03:16  [ТС] #12
как это "rand() & 3" понять?
0
илья9696
120 / 120 / 35
Регистрация: 15.11.2014
Сообщений: 533
Завершенные тесты: 3
16.06.2016, 03:17 #13
Поставил в общем, если найдет то остановит, пойду спать. А так пока меньше 6 знаков не было

C++
1
2
3
4
if(d < 1000)
        {
        system("pause");
        }
1
Ko
-65 / 5 / 0
Регистрация: 23.12.2011
Сообщений: 248
16.06.2016, 03:21  [ТС] #14
видимо все классные программисты по ночам обитают тут)

Добавлено через 2 минуты
илья9696 ты мне скажи если будет 0))))))))))
0
илья9696
120 / 120 / 35
Регистрация: 15.11.2014
Сообщений: 533
Завершенные тесты: 3
16.06.2016, 03:23 #15
Следующее значение 0, посмотрим будет ли
1
Миниатюры
Может кто знает как сделать рандом от 0 до 4294967295  
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.06.2016, 03:23
Привет! Вот еще темы с ответами:

Кто может сделать? - C++
Описать статический массив. Реализовать 2 способа инициализации массива (пользователь может сам выбрать способ, сделать меню): -...

кто знает как? - C++
1. Написать шаблон функции для нахождения индексов элементов из заданного интервала, посортованих за спадением значений. Потом...

Кто может сделать олимпиадную задачу? - C++
Нашел одну олимпиадную задачу, не знаю как ее решить. Кто-нибудь может? Четырехзначное число, записанное в восьмеричной системе...

Кто знает как исправить ошибки? - C++
Надо в указатель записать адрес функции из класса // узел template&lt;typename T&gt; struct T_Node { T m_value; // значение ...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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