Техника
какой алгоритм лежит в основе выбора "случайной" песни в плеере?
генератор случайных чисел
есть такое понятие - датчик псевдослучайных чисел. разных датчиков - тысячи, и придумываются все новые и новые.
что там засунули в конкретной программе - ну откуда мы знаем! наверно и сам программист не знал, просто вызвал библиотечный.
простейший пример:
берем некоторое ненулевое число (любое, например - текущее время в миллисекундах или номер тика процессора) V0
V1=3141592621*V0 + 907633385
V2=3141592621*V1 + 907633385
V3=3141592621*V2 + 907633385
...
Естественно, считаем все в 32-х разрядных целых, так что результат на каждом шагу обрезается.
Vi получаются очень похожими на настоящие случайны числа - равномерно распредлены, некоррелрованы.
если хотим перемешать случайно несколько треков - приписываем к каждому по псевдослучайному числу от датчика, потом сортируем треки по этим числам, получаем числа - по возрастанию, треки - случайно.
что там засунули в конкретной программе - ну откуда мы знаем! наверно и сам программист не знал, просто вызвал библиотечный.
простейший пример:
берем некоторое ненулевое число (любое, например - текущее время в миллисекундах или номер тика процессора) V0
V1=3141592621*V0 + 907633385
V2=3141592621*V1 + 907633385
V3=3141592621*V2 + 907633385
...
Естественно, считаем все в 32-х разрядных целых, так что результат на каждом шагу обрезается.
Vi получаются очень похожими на настоящие случайны числа - равномерно распредлены, некоррелрованы.
если хотим перемешать случайно несколько треков - приписываем к каждому по псевдослучайному числу от датчика, потом сортируем треки по этим числам, получаем числа - по возрастанию, треки - случайно.
НАсколько я знаю, тот же алгоритм, что и формула в Экселе СЛЧИС. Берется все из операционной системы. Перебор переменной и остановка.
Если устройство мобильное - скорее всего псевдослучайная последовательность, как описал Михаил Левин. Если же речь идет о программном плеере, работающем поверх операционной системы, то некоторые системы коллекционируют настоящие (а не псевдо) случайные события в так называемый пул энтропии. Например события от клавиатуры или от сетевой карты. И программа-плеер, обращаясь к пулу энтропии, получает уже не псевдослучайную, а действительно случайную последовательность.
Генератор случайных чисел с исключением выбранных.
Каждая песенка имеет уникальный идентификатор (УИД) . В программе существует алгоритм генерации случайного числа (УИД).
Похожие вопросы
- История голографии. Что лежит в основе технологии?
- Какие ПРИНЦИПЫ лежат в ОСНОВЕ ОПРЕДЕЛЕНИЯ МЕСТОПОЛОЖЕНИЯ МОБИЛЬНОГО ТЕЛЕФОНА? Всем хорошего дня!
- Каковы ПРИНЦИПЫ (по Вашему мнению) лежат в основе функционирования НЛО ЯВЛЯЮЩИЕСЯ ПРОДУКТОМ ДЕЯТЕЛЬНОСТИ ИНОПЛАНЕТЯН?
- у меня плеер не отображает песни
- Подскажите на счет плееров.
- Литература по методике проектирования нестандартного оборудования с алгоритмом расчетов
- Как пользоваться MP3-плеером? (Похож на коробочку, маленький, без экрана)
- Как вы думаете,современные МР3 плееры могут превзойти(ПО КАЧЕСТВУ ЗВУКА) СD-WALKMAN SONY D-NE 920?Спасибо за ответ!!
- Почему МР3-плееры так испортили?!
- Аналог или mp3? Какой звук лучше, в старом кассетном плеере или в mp3 плеере?