0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
1

Генерации псевдослучайной последовательности

31.01.2016, 20:10. Показов 4962. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Необходимо реализовать программу для генерации псевдослучайной последовательности с
помощью линейно конгруэнтного метода. Следующие данные необходимо получить от
пользователя: параметры для линейно-конгруэнтного метода: где m — модуль, a — множитель, c —
приращение, Хо — начальное значение, N - общее количество элементов последовательности, n -
длина каждого из элементов последовательности, путь до выходного файла. Программа должна
уметь генерировать до 10^6 элементов, состоящих из 10^6 разрядов. Программа должна
генерировать числовую и строковую последовательность.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.01.2016, 20:10
Ответы с готовыми решениями:

Оценка псевдослучайной последовательности
Задали семестровую. Не совсем понял суть задачи. Может кто-нибудь подсказать с чего начать?

Генерация неравномернораспределенной псевдослучайной последовательности
Здравствуйте. Смысл задания в следующем: - Нужно сгенерировать последовательность 0-ей и 1-ц. При...

Разработка программы Генератора Псевдослучайной Последовательности
Всем привет! Есть задача: написать программу Генератора Псевдослучайной Последовательности (ГПСП)...

Подсчитать количество членов псевдослучайной последовательности, попадающих в пределы отрезка [a, b]
Доброе время суток, я совсем не давно на с++ и не могу справиться с задачкой в которой нужно...

14
260 / 208 / 99
Регистрация: 13.12.2015
Сообщений: 1,098
31.01.2016, 20:26 2
sonlir, вот задачка на ночь
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
02.02.2016, 04:16  [ТС] 3
SergioO, И ни кто её не решит?)
0
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
02.02.2016, 13:02 4
Цитата Сообщение от sonlir Посмотреть сообщение
уметь генерировать до 10^6 элементов, состоящих из 10^6 разрядов.
Хранить последовательность надо? А то, как бы, если разряды двоичные - это терабайт памяти.
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
02.02.2016, 19:17  [ТС] 5
avgoor, далее будет вторая часть задания:
Необходимо реализовать программу сортирующую псевдослучайную последовательность.
Алгоритмы сортировки должны быть скомпонованы в виде библиотеки dll и подключаться для
использования. От пользователя необходимо получить следующие параметры: путь до входного
файла, путь до выходного файла. Сортировку строковой последовательности необходимо
реализовать в лексикографическом порядке.
0
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
02.02.2016, 19:25 6
sonlir, Сортировка терабайта данных выходит за рамки данного раздела.
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
02.02.2016, 21:37  [ТС] 7
avgoor, генерировать ДО. Понятно, что ни кто не будет доходить до терабайта, но возможность не должна исключаться.

Добавлено через 11 минут
avgoor, Разряды имеется ввиду кол-во чисел или символов в одном элементе.
0
77 / 58 / 19
Регистрация: 22.11.2015
Сообщений: 193
02.02.2016, 21:48 8
sonlir, уже реализовано. Можно подсмотреть в boost::random::linear_congruential

С boost.org
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// In header: <boost/random/linear_congruential.hpp>
 
template<typename IntType, IntType a, IntType c, IntType m, IntType val> 
class linear_congruential {
public:
  // types
  typedef IntType result_type;
 
  // construct/copy/destruct
  linear_congruential(IntType = 1);
  template<typename It> linear_congruential(It &, It);
 
  // public member functions
  void seed(IntType = 1) ;
  template<typename It> void seed(It &, It) ;
  result_type min() const;
  result_type max() const;
  IntType operator()() ;
 
  // public static functions
  static bool validation(IntType) ;
  static const bool has_fixed_range;
  static const result_type min_value;
  static const result_type max_value;
  static const IntType multiplier;
  static const IntType increment;
  static const IntType modulus;
};
1
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
02.02.2016, 22:53 9
Цитата Сообщение от sonlir Посмотреть сообщение
Разряды имеется ввиду кол-во чисел или символов в одном элементе.
Не знаю, что вы называете разрядом, но во всем остальном мире двоичным разрядом называют кол-во бит в представлении числа, например, на x86 int - 32 разрядный, long - 64 разрядный. А 10^6 разрядное число придется реализовывать самостоятельно.
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
03.02.2016, 06:13  [ТС] 10
avgoor, Вы слишком усложняете, это университетская задачка, и в данном контексте имеется ввиду именно кол-во чисел.
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
03.02.2016, 11:47 11
https://www.cplusplus.com/refe... al_engine/
1
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
03.02.2016, 12:23 12
Цитата Сообщение от sonlir Посмотреть сообщение
Вы слишком усложняете, это университетская задачка, и в данном контексте имеется ввиду именно кол-во чисел.
Цитата Сообщение от sonlir Посмотреть сообщение
n - длина каждого из элементов последовательности
Тогда что сие значит?
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
03.02.2016, 20:51  [ТС] 13
avgoor, то же, что и разрядность в данном контексте.
0
1550 / 875 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
04.02.2016, 11:32 14
sonlir, тогда лови код. Когда препод вам скажет про разряды то же, что и я, продолжим.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <fstream>
int main()
{
    int m, a, c, X0, N, n;
    std::cout << "Input m, a, c, X0, N, n" << std::endl;
    std::cin >> m >> a >> c >> X0 >> N >> n;
 
    std::ofstream fout("out.txt");
    int x = X0;
    for (int i = 0; i < N; i++) {
        x = (x*a + c) % m;
        std::cout << (x%n) << std::endl;
        fout << (x%n) << std::endl;
    }
}
0
0 / 0 / 0
Регистрация: 30.01.2016
Сообщений: 7
04.02.2016, 19:24  [ТС] 15
avgoor, я уже уточнял, так что не скажет) забыл добавить, что программа должна быть реализована с использованием форм
0
04.02.2016, 19:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.02.2016, 19:24
Помогаю со студенческими работами здесь

Генерация псевдослучайной последовательности
Господа, прошу подкинуть идею. Существует таблица вопросов вида: (id, текст, тип_задания, ...) Из...

Генератор псевдослучайной последовательности с изменяемыми параметрами
как создать генератор псевдослучайной последовательности с изменяемыми параметрами?? помогите плз))

Алгоритм стеганографии с использованием псевдослучайной последовательности
Здравствуйте . У меня есть код встраивания информации в изображение с использованием...

Генераторы псевдослучайной последовательности (Рекурренты в конечном поле )
Нужно сделать генератор псевдослучайной последовательность тип генератора - рекурренты в конечном...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru