Генерация равномерно распределенных случайных чисел (0,1) - страница 16

 

S, ну ты чо? Я говорю об АКФ, например.

 
Mathemat >>:

S, ну ты чо? Я говорю об АКФ, например.

Ага, понятно.

 

Ну вот, сразу в кусты. Это все, что ты хотел сказать?

 
Mathemat >>:

Ну вот, сразу в кусты. Это все, что ты хотел сказать?

Я что-то хотел сказать? :) Я тебя не понял, уточнил - ты обьяснил. Но :) . Да, я же даже вроде бы ответил на твой вопрос. :)

Кстати - ты проше и понятней для всех мыслю свою излагай. :) я иногда туплю - не понимаю, что ты хочешь сказать.

 

Да я и сам не всегда понимаю, что хочу сказать :)

Кажется, начинаю догадываться, почему тебе от моих постов матом ругаться хочется.

 
gumgum >>:


10000000 ranD(1,40) speed = 37.95500000 div=1/div

10000000 ranD(1,40) speed = 26.34800000 div=div*0.5

:)

Наверное надо всё-таки уточнить, что цифры здесь не скорость, а время. То есть вариант div*0.5 примерно в полтора раза быстрее.

 

Вот что рисует mql'евский ГСЧ :


:о)

 
gumgum >>:
Может кто нибудь сделает dll например из Генерация случайных чисел? Спасибо.

Актуально ?

У меня со звуковой карты берёт

 
MaStak >>:

Актуально ?

У меня со звуковой карты берёт


Конечно! Будет очень хорошо!
 

AuxDll.dll описание функций:

OpenAux - Открывает звуковое устройство для чтения, вызывается 1 раз. В случае успеха вернёт 0, неудача (-1).

RealRandom - читает звуковой буфер и копирует его во внутренний массив размером 256 байт. Каналы в этом буфере чередуются ( Buffer[L, R, L, R, L, и т.д.] ). Т.е. текущее напряжение в канале например L = Buffer[0]*256 + Buffer[2]. Именно это значение и возвращает функция, таким образом имеем диапазон возвращаемых значений [0 ... 65535] . Эту функцию нельзя вызывать если устройство не было открыто.

GetByte - Отладочная функция. Возвращает значение любого байта из массива о котором я писал выше. Теоретически передаваемый в функцию индекс массива может быть >255, C++ в этом плане лоялен. Но чем это закончится ? В лучшем случае вернётся байт памяти никак не относящийся к звуку )

CloseAux - Закрывает звуковое устройство. Не забывайте вызывать по окончании работы. Иначе, не закрытое устройство будет продолжать запись в память.


Прототипы:

int OpenAux();
int RealRandom();
void CloseAux();
BYTE GetByte(int _i);


пример MQL

// *** Импорт ***
#import "AuxDll.dll"
int OpenAux();
int RealRandom();
void CloseAux();
int GetByte(int _i);
#import
bool StateAux=false;


int init(){
//----
OpenAux();
//----


return(0);}

int start(){

int Rnd=RealRandom();


return(0);}


int deinit(){
//----
CloseAux();

//---

return(0);}

Изначально библа писалась для снятия звука с микрофона, я даже ГБШ спаял для этого вот этот. Но позже оказалось что она перехватывает любой звук на компе.


Теперь AUXmeter.exe

Просто тестовая прога, библиотека должна лежать рядом. Линиями обозначаются выпавшие числа, чем чаще выпадает одно и тоже число тем длиннее его линия (не забываем о полосе прокрутки чтоб просмотреть весь диапазон). График автоматически масштабируется.

Кнопки

СТАРТ - Запуск теста. Для открытия и использования звук. устр-ва используются внутренние функции, библиотека не нужна.

СТОП - Останов теста.

Открыть - Тест функции OpenAux(). Библиотека необходима. Возвращённое функцией значение отобразится на кнопке.

Выборка - Тест функции RealRandom(). Библиотека необходима. Возвращённое функцией значение отобразится на кнопке.

Закрыть - Тест функции CloseAux(). Библиотека необходима.

Между кнопками счётчик выборок при тесте.

Вроде всё.

Файлы:
auxdll.rar  8 kb
Причина обращения: