Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Показать сообщение отдельно
grizlik78
Эксперт С++
1983 / 1476 / 191
Регистрация: 29.05.2011
Сообщений: 3,050
18.07.2011, 21:42

Генерация случайных чисел в заданном диапазоне.

18.07.2011, 21:42. Просмотров 9111. Ответов 21
Метки (Все метки)

Ответ

Цитата Сообщение от easybudda Посмотреть сообщение
а последовательность, видимо, нужно проверять количеством идущих подряд одинаковых чисел...
Ну, вообще-то существует огромное количество различных статистических тестов. Пожалуй кое-какие из них я даже попробую, попозже. Правда гарантированно определить, что генератор является плохим нельзя, это можно утверждать лишь с некоторой заданной вероятностью.
Цитата Сообщение от Masel Посмотреть сообщение
оба предложенных варианта абсолютно равноценны в вопросе "случайности". Софистикой занимаетесь)
Masel, не факт. То есть оба неслучайны по определению, это да. Но хороший псевдослучайный генератор должен иметь свойства как можно ближе к свойствам истинно случайной последовательности. В статистическом смысле, конечно. Если интересно, можно про это почитать во втором томе "Искусства программирования" Дональда Кнута. Там же и некоторые тесты описаны.
Что же касается rand(), он обычно реализован с использованием линейного конгруэнтного генератора, а у него младшие биты имеют характеристики хуже старших, поэтому вариант с остатком рискует оказаться "менее случайным". Но не думаю, что сильно, ведь самые младшие биты rand() и не выдаёт.

Вернуться к обсуждению:
Генерация случайных чисел в заданном диапазоне.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.07.2011, 21:42

Генерация случайных чисел типа double во всем диапазоне
Нужна помощь в написании программы, генерирующей псевдослучайные числа типа...

Сформировать массив случайных целых чисел в заданном диапазоне
Такая вот задачка не получается решить(написать) её. (хочу понять-разобраться...

Записать в текстовый файл 20 случайных чисел в заданном диапазоне
. Напишите программу, которая создает текстовый файл и записывает в него 20...

0
Другие темы раздела
C++ Проблемма с логическим оператором if http://www.cyberforum.ru/cpp-beginners/thread334159.html
Всем привет. Мне надо было написать такую програмку: если пользователь вводит символ 'y' (yes), то он задаёт данные в структуру, которые в последствии отображаются, а елси пользователь вводит символ...
C++ Непонятная ошибка Не могу понять, где неправильно. У меня есть такая матрица А 1 4 2 1 3 6 1 5 2 2 3 5 Мне же её надо преобразовать к такому виду - В: 4 0 0 0 1 6 5 2 5 В матрице А числа идут как бы... http://www.cyberforum.ru/cpp-beginners/thread334155.html
C++ Как поместить в массив строк строку
Есть такой вот массив char s; ну или char** s; я никак не могу разобраться в этих указателях(( 1.Как поместить в него строку 2.Как извлечь из него строку
Вывод строки в текстовый файл C++
Вместо строки появляется нечто вроде 25d3fe4 Подскажите пожалуйста, в чем ошибка? ofstream fout; String str = Now(); fout << str.c_str();
C++ ofstream & ifstream :: binary read-write struct http://www.cyberforum.ru/cpp-beginners/thread334133.html
Не пойму в чем дело... но я не могу считать всю структуру FNTBINARY из файла, файл - это она и есть в бинарном виде, одна структура FNTBINARY. Размер структуры 72412, файл на диске весит 72440...
C++ Непонятная ошибка Нужно считать в вектор пар все числа, отличные от нуля. В паре - первое число - всегда типа int, второе - double. Написал небольшую ф-цию. Но не получается считать. Проблема - в одной строчке.. не... подробнее
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru