Генерация равномерно распределенных случайных чисел (0,1) - страница 19 1...1213141516171819 Новый комментарий Andrey Dik 2010.04.07 08:13 #181 AlexEro >>: 2-й алгоритм void OnStart() { //--- MathSrand((int)TimeLocal()); for(int i=0;i<10000;i++) { Print(DRNG_Tausworthe()); } } //+------------------------------------------------------------------+ // Tausworthe is a nice option. It gives 2^88 non-repetitive numbers. // A handful of primitive operations, and extremely good randomness; static long s1 = 1423667, s2 = 2234, s3 = 34567 ; // any non-zero numbers long RNG_Tausworthe () { long b ; b = ( (s1 << 13) ^ s1) >> 19; s1 = ( (s1 & 4294967294) << 12) ^ b; b = ( (s2 << 2) ^ s2) >> 25; s2 = ( (s2 & 4294967288) << 4) ^ b ; b = ( (s3 << 3) ^ s3) >> 11 ; s3 = ( (s3 & 4294967280) << 17) ^ b ; return (s1 ^ s2 ^ s3); } // Or, simply: // s1=((s1&4294967294)<<12)^(((s1<<13)^s1)>>19) ; // s2=((s2&4294967288)<<4)^(((s2<<2)^s2)>>25) ; // s3=((s3&4294967280)<<17)^(((s3<<3)^s3)>>11) ; // return (s1^s2^s3) ; //............................./ DRNG_Tausworthe \................................. double DRNG_Tausworthe (void) { return ( (double) RNG_Tausworthe () * 2.3283064365e-10); } Что я не так сделал? [Удален] 2010.04.07 08:26 #182 joo >>: 2-й алгоритм Что я не так сделал? Побитовые операции. И не Вы, а вероятно MetaQuotes. [Удален] 2010.05.02 14:02 #183 Извиняюсь, если этот вопрос уже затрагивался, открыл отдельную тему по интересующему меня вопросу по ГСН (ГПСН): https://forum.mql4.com/ru/31779 1...1213141516171819 Новый комментарий
2-й алгоритм
Что я не так сделал?
2-й алгоритм
Что я не так сделал?
Побитовые операции. И не Вы, а вероятно MetaQuotes.
Извиняюсь, если этот вопрос уже затрагивался, открыл отдельную тему по интересующему меня вопросу по ГСН (ГПСН):
https://forum.mql4.com/ru/31779