Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13

Реализовать алгоритм генерации случайного числа

24.04.2017, 18:53. Показов 1644. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо реализовать алгоритм генерации случайного числа. Прочитал, что нужна зависимость от времени/координаты положения курсора. Но как сделать не знаю
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.04.2017, 18:53
Ответы с готовыми решениями:

Вопрос по генерации случайного числа.
Здрасьте еще раз! На этот раз я никак не могу понять, как сделать генерацию случайных чисел (заполнение массива), которая зависит от...

Время генерации случайного числа
Вопрос к опытным пользователям. Может кто подскажет время генерации случайного числа (скажем по нормальному закону распред.) в сравнении...

Реализовать алгоритм средних квадратов для генерации случайных чисел
Помогите написать программу: "Реализовать алгоритм средних квадратов для генерации случайных чисел." Для КП нужно(.

11
192 / 166 / 82
Регистрация: 01.07.2016
Сообщений: 943
24.04.2017, 18:55
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
 
int main()
{
    srand( time( 0 ) );
    int mas[10];
    
    for(int i=0;i<10;++i)
        mas[i] = rand() % 10;
}
0
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13
24.04.2017, 19:12  [ТС]
Спасибо, но мне нужно именно сам алгоритм написать, а не встроенным воспользоваться!
0
192 / 166 / 82
Регистрация: 01.07.2016
Сообщений: 943
24.04.2017, 19:13
Что вы понимаете под "алгоритмом"? Ход действий?
0
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13
24.04.2017, 19:16  [ТС]
Ну, так понимаю, что должна быть какая-то формула с переменными, по которой число считается. При этом переменные - это, как писал выше, координаты положения курсора, например, или какие-то доли секунд, чтобы как раз получалась псевдослучайность.

Но какая должна быть формула и как выцепить координаты курсора - понятия не имею, к сожалению
0
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
24.04.2017, 19:19
Цитата Сообщение от StudentSSU Посмотреть сообщение
Но какая должна быть формула
От простых до посложнее.

Цитата Сообщение от StudentSSU Посмотреть сообщение
как выцепить координаты курсора
Если Windows, то GetCursorPos из Windows.h
0
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13
24.04.2017, 19:22  [ТС]
То есть, если я беру Линейный конгруэнтный метод, то я могу вместо коэф-та a взять как раз положение курсора, а m может быть любым?
0
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
24.04.2017, 19:29
Например, да. Там вообще все числа могут быть любыми, но некоторые тройки дадут совсем плохие псевдослучайные числа (которые повторяются часть), а некоторые - числа получше.
Вообще у курсора 2 координаты, а там 4 константы: a, c, m, X0. m лучше брать простым. Остается 3 константы и там уже можно координаты применить.
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
24.04.2017, 19:41
Цитата Сообщение от StudentSSU Посмотреть сообщение
То есть, если я беру Линейный конгруэнтный метод, то я могу вместо коэф-та a взять как раз положение курсора, а m может быть любым?
Нормальные белые люди используют координаты курсора для генерации семени генератора (начального значения псевдослучайной последовательности), а не его коэффициентов.
0
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13
24.04.2017, 19:44  [ТС]
Думаю, что к нормальным людям относятся люди, которые имеют приличный опыт работы на с, а тот, кто столкнулся с этим недавно, просто пытается хоть как-то разобраться)
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
24.04.2017, 19:51
Цитата Сообщение от StudentSSU Посмотреть сообщение
Думаю, что к нормальным людям относятся люди, которые имеют приличный опыт работы на с, а тот, кто столкнулся с этим недавно, просто пытается хоть как-то разобраться)
Так там дело не в Си, а в матане. Если хотите разобраться, то у Кнута в Искусстве Программирования был подробный разбор именно матана определяющего выбор констант и оценивающего результат. Но если кратко, с неправильными константами выходит фигня типа "а почему все типа-случайные числа делятся на семь?".
0
0 / 0 / 0
Регистрация: 16.10.2016
Сообщений: 13
24.04.2017, 22:11  [ТС]
всем спасибо за помощь, закончилось все успешно, правда, вместо координат цепляю текущее время - секунды и доли)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.04.2017, 22:11
Помогаю со студенческими работами здесь

Генерация случайного числа, максимально случайного
Добрый день, задался вопросом как получить случайное число, но не псевдо-случайное по идее функции rand() и srand(time(NULL))...

Алгоритм генерации случайного UUID
Написать алгоритм генерации случайного UUID вида 550e8400-e29b-41d4-a716-446655440000, все символы случайны. Алфавит возможных символов:...

Повтор генерации случайного числа
День добрый уважаемые форумчане. Задача стоит следующая : нужно на форму выводить случайные числа в определенном диапазоне. Для этого...

Функция генерации 32 разрядного случайного числа на чистом С
Нужна функция генерации 32 разрядного случайного числа на чистом С. Буду рад помощи)

Объясните код генерации случайного числа из заданного диапазона
YuS_2, пожалуйста, объясни код: set /a number=%random%%%(max-min+1)+min.


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера 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, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru