|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
|
генератор псевдослучайных чисел без рандом....07.01.2010, 11:17. Показов 5376. Ответов 15
Метки нет (Все метки)
народ может кто знает как сделать такой генератор без использования функций rand,srand,URandom,randomize.....
1
|
|
| 07.01.2010, 11:17 | |
|
Ответы с готовыми решениями:
15
Генератор псевдослучайных чисел Генератор псевдослучайных чисел Генератор псевдослучайных чисел. |
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 07.01.2010, 12:08 | ||||||
|
Существует много разных методов, в зависимости от того, что тебе надо. Один из простейших такой:
Разумеется, это один из самых простейших генераторов, пригодный разве что для "игрушечных" целей. Если ты ищешь статистически хороший генератор, гляди в сторону Mercienne Twister. Если нужен ГСЧ, пригодный для криптографических целей, целься на что-нибудь ещё более серьёзное.
1
|
||||||
|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
|
| 07.01.2010, 12:30 [ТС] | |
|
Nick Alteк сожалению забыл указать что нужно на языке си
да и нужен он мне для не очень серьезных целей так что подайдет самый простой...
1
|
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 07.01.2010, 18:51 | ||||||
|
Так это же Сишный код-то. C++ там только для объявления констант.
1
|
||||||
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 07.01.2010, 19:10 | |
|
Nick Alte, или в первой строке: MaxValue
или в 6 и 7 : MaxVal
1
|
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
| 07.01.2010, 22:45 | |
|
Главное - принцип!
1
|
|
|
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
|
|
| 08.01.2010, 05:18 | |
|
1
|
|
|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
||||||
| 08.01.2010, 13:30 [ТС] | ||||||
|
спасибо но помоему я чтото не допонял поскольку при подстановке в следующую прогу (проверяющую генерацию случайности чисел) :
и вот это строка r=Random(); выдает unreachable code может подскажете что не так?
1
|
||||||
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 08.01.2010, 13:41 | ||||||
|
Да всё не так. Тут совершенно тупо и бессмысленно спутаны две разные реализации ГСЧ (причём одна расчитана на встроенный ассемблер в 16-битном режиме). Налеплена невпопад какая-то чушь. Вот пример использования ГСЧ для вывода 5 случайных чисел в диапазоне от 0 до 99:
1
|
||||||
|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
||||||
| 08.01.2010, 13:57 [ТС] | ||||||
|
к сожалению я так и догадывался что это чушь но пытался делать по примеру который нам давал препод вот он :
1
|
||||||
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 08.01.2010, 14:23 | ||||||
|
А зачем их скрещивать-то? Для чего оно надо? Могу показать, как заменить один ГСЧ на другой. Заодно и как форматировать код по-человечески.
1
|
||||||
|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
||
| 08.01.2010, 14:34 [ТС] | ||
|
и еще не моглибы вы обьяснить по какому принцыпу это работает:
а коменты по английски т.к. компелятор русский вообще на отрез не воспринимает))
1
|
||
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
||||||
| 08.01.2010, 14:38 | ||||||
|
% - это остаток от деления. Таким образом, мы просто последовательно возводим Factor в степени 1, 2, 3 и так далее и берём остаток от деления результата на MaxValue. Каковой остаток и возвращаем как очередное сгенерированное число. Свойства у такого возведения в степень (разумеется, при условии взаимной простоты MaxValue и Factor) таковы, что во-первых, оно перебирает все числа от 0 до MaxValue, а во-вторых, в неочевидном на первый взгляд порядке.
Статическая переменная сохраняет своё значение между вызовами, то есть, этот генератор можно написать и так:
1
|
||||||
|
10 / 10 / 0
Регистрация: 21.11.2009
Сообщений: 34
|
|
| 08.01.2010, 14:44 [ТС] | |
|
Nick Alte огромное спасибо даже не знаю как вас отблагодарить....
1
|
|
|
1675 / 1047 / 174
Регистрация: 27.09.2009
Сообщений: 1,945
|
|
| 08.01.2010, 14:49 | |
|
Сударыня, с тех пор, как древние финикияне придумали деньги, этот вопрос отпал сам собой (с) Урусов, кажется.
![]() Ну а вообще пожалуйста. На здоровье.
1
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
|
| 08.01.2010, 23:19 | |
|
Чего-то я сомневаюсь что деньги придумали именно древние финикияне.
1
|
|
| 08.01.2010, 23:19 | |
|
Помогаю со студенческими работами здесь
16
генератор псевдослучайных чисел... Генератор псевдослучайных чисел Генератор псевдослучайных чисел Генератор псевдослучайных чисел. Массивы,генератор псевдослучайных чисел. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|