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

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

Войти
Регистрация
Восстановить пароль
 
D_Ok
44 / 33 / 12
Регистрация: 11.02.2014
Сообщений: 134
#1

Случайные или псевдослучайные числа? - C++

27.03.2014, 13:25. Просмотров 257. Ответов 4
Метки нет (Все метки)

можно ли считать, такие числа случайными, если не знать какие операции и их последовательность производилось с переменной number?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
void Rand_five(int row)
{
    double number;
    int pow;
    while (row--)
    {
        for (int j = 0 ; j < 9; j++)
        {
            for (int i = 0; i < 5; i++)
            {
                number = (rand() % 10000000) / (rand() % 49+21);
                pow = rand() % 10;
                while (pow--)
                    number = sqrt(number);
                number = number*10000 - int (number*10000);
                number = int (number*10);
                cout << number;
            }
            cout << "\t";
        }
            cout << endl;
    }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.03.2014, 13:25     Случайные или псевдослучайные числа?
Посмотрите здесь:

Случайные числа C++
C++ Случайные числа
случайные числа C++
C++ Случайные числа
C++ Случайные числа
Случайные числа в C++ C++
C++ Случайные числа
Случайные(псевдослучайные) числа C++
C++ Случайные числа от -8 к 8
Случайные числа C++
C++ Случайные числа

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5550 / 2584 / 235
Регистрация: 01.11.2011
Сообщений: 6,391
Завершенные тесты: 1
27.03.2014, 16:03     Случайные или псевдослучайные числа? #2
D_Ok, честно сказать у меня столько казуистических шуток родилось с вашего вопроса, что я даже вам обстоятельно распишу ответ на ваш вопрос.

Чтобы однозначно ответить можно ли конкретные ваши числа считать случайными или псевдослучайными нужно посмотреть распределение этих чисел на некотором множестве. К примеру, вызвать огромное число раз вашу функцию с одним и тем же параметром и поглядеть будут ли полученные случайные числа кучковаться рядом с какими-то числами или же будут более-менее равномерно отставать друг от друга.

Например, если полученные числа будут вот такой последовательностью:
Код
5 12 11 61 90 30 66 60 2 22 88 30 67 12 44 41
то можно условно говорить, что числа случайны.
Если же последовательность будет вот такой:
Код
44 7 80 75 89 80 88 70 90 77 85 31 19 99 52 76
то видно, что числа близки к восьмидесяти. И их нельзя уже называть случайными именно потому, что высока вероятность угадать получаемое число.
Vtulhu
369 / 375 / 96
Регистрация: 12.08.2011
Сообщений: 1,610
27.03.2014, 17:07     Случайные или псевдослучайные числа? #3
Нет.
respondent
10 / 10 / 0
Регистрация: 25.03.2014
Сообщений: 19
27.03.2014, 17:31     Случайные или псевдослучайные числа? #4
Сгенерировать полностью случайные числа только лишь арифметическими методами невозможно. То, что Вы используете это генератор псевдо-случайных чисел.
zss
Модератор
Эксперт С++
 Аватар для zss
6125 / 5728 / 1852
Регистрация: 18.12.2011
Сообщений: 14,638
Завершенные тесты: 1
27.03.2014, 17:36     Случайные или псевдослучайные числа? #5
Если использовать строгое определение, то все это псевдослучайные числа,
но с разной функцией распределения.
Для получения случайных чисел используют специальные аналоговые датчики
(например, с высокой точностью измеряется напряжение на резисторе).
Yandex
Объявления
27.03.2014, 17:36     Случайные или псевдослучайные числа?
Ответ Создать тему
Опции темы

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