Автор Тема: Изучаем С. Урок 2.  (Прочитано 10962 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« : 27 Января 2004, 22:18:28 »
Каким алгоритмом можно реализовать на языке С выбор случайного числа? Возможно ли сгенерировать идеальный алгоритм, который бы выдавал идеально-случайные последовательности чисел?

Оффлайн Xander

  • санитар леса
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1780
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #1 : 27 Января 2004, 23:15:11 »
нельзя.
•••Jah\'d never let us down!•••

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #2 : 27 Января 2004, 23:33:08 »
Почему?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #3 : 28 Января 2004, 00:23:14 »
языки программирования используют генератор псевдо-случаных последовательностей.
Для реализации действительно случайной последовательности используются специальные микросхемы.

PS
(AFAIK)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #4 : 28 Января 2004, 00:29:45 »
А по какому принципу работают специальные микросхемы. Какой алгоритм отбора случайного числа?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #5 : 28 Января 2004, 00:34:05 »
судя по тем источникам, которые я когда-то читал, там используются случайные физически процессы (например белый шум).
Такие микросхемы используются в крупных криптографических системах (например у военных). Так что алгоритмы простым смертным недоступны :)
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #6 : 28 Января 2004, 00:36:08 »
а вообще пользуйся яндексом и гуглом.
Поиск по словам:
 - генератор случайной последовательности
 - генератор псевдослучайной последовательности
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн ThE0ReTiC

  • Главный по тарелочкам
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 4041
  • +2/-0
  • 2
    • Просмотр профиля
    • http://
Изучаем С. Урок 2.
« Ответ #7 : 28 Января 2004, 12:26:00 »
Цитировать
Макс:
случайные физически процессы (например белый шум).

Скорее розовый
Белый шум можно упорядочить с точки зрения формальной логики
правда розовый реализовать сложнее
AS IS...

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #8 : 28 Января 2004, 16:47:59 »
Хорошо, идеальный процесс нам неудасться сымитировать здесь программно, тогда остается процесс генерации псевдо-случайных чисел. Какой алгоритм позволяет добиться наиболее сложного(если хотите - завуалированного) процесса отбора случайного числа посредством банальных операторов логики, таких как OR, XOR, AND (Аналоги на С: ||, !=, <=, ==, >=, && и другие)?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #9 : 28 Января 2004, 17:23:11 »
scientist
а не проще использовать возможности, которые предоставляет язык ? В с++ по любому есть (хотя я его не знаю) функция, возвращающая случайное число из заданного диапазона.
« Последнее редактирование: 28 Января 2004, 18:16:53 от Макс »
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Yukko

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1586
  • +0/-0
  • 0
    • Просмотр профиля
    • http://estrabota.com.ua
Изучаем С. Урок 2.
« Ответ #10 : 28 Января 2004, 18:00:51 »
ИМХО, максимализм... из разряда: я где-то читал, что средствами языка получается псевдослучайная последовательность, меня не устраивает псевдо... мне надо
Цитировать
добиться наиболее сложного
, а надо сначала задаться вопросом зачем.
работа в Украине

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #11 : 28 Января 2004, 20:33:59 »
Затем, чтобы сгенерировать псевдо-случайное число, которое будет уникальным с точки зрения наблюдающих. Например, игровой автомат.

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

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #12 : 28 Января 2004, 22:26:04 »
Цитировать
scientist:
Затем, чтобы сгенерировать псевдо-случайное число, которое будет уникальным
именно уникальное или все же случайное ?
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн scientist

  • Banned
  • Пользователь
  • **
  • Сообщений: 57
  • +0/-0
  • 0
    • Просмотр профиля
Изучаем С. Урок 2.
« Ответ #13 : 13 Февраля 2004, 04:43:51 »
Макс, ты прав, идеальных чисел нет в генераторах.

А вот условие равнозначности "уникального" и "случайного" не выполняется, т.к. эти два понятия из разных категорий, следовательно мы не можем сопоставлять их как результат дилеммы.

Оффлайн metton

  • access granted
  • Старожил
  • ****
  • Сообщений: 320
  • +0/-0
  • 2
    • Просмотр профиля
    • http://bluejack.ru/
Изучаем С. Урок 2.
« Ответ #14 : 13 Февраля 2004, 19:16:19 »
scientist
Цитировать
Наиболее чистые и равномерные последовательности случайных чисел

Мы вообще о чём говорим? Что значит ЧИСТЫЕ (!) и РАВНОМЕРНЫЕ (!) СЛУЧАЙНЫЕ (!!!) последовательности? Это что-то типа горько-солёная клубника... имхо
 BlueJacking среди нас

 

Sitemap 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