Generazione di numeri casuali uniformemente distribuiti (0,1) - pagina 8

 
SProgrammer >>:

Вам для исследований? Или для игр?


uno.
 
gumgum >>:


первое.

Allora sia la normalità che la "casualità dovrebbero essere sufficienti". Prendi due, tre o cinque numeri casuali da 0 a 1 - e moltiplicali se necessario.

 
SProgrammer >>:

Тогда и нормальности и "случайности должно хватить". получтите два, три - пять случайных чисел от 0 до 1 - и их перемножте если что.


0.9*0.9*........*0.9->0 restringimento del corridoio = (0+@,1-@)
 
gumgum >>:


первое.

Prendete un array di veri numeri casuali - long MAX_INT e andate in giro usando lo stesso array.


Gli elenchi sono disponibili sul web, ad esempio http://www.random.org/integers/

 
gumgum >>:


0.9*0.9*........*0.9->0 коридор сужаются = (0+@,1-@)

No, la distribuzione sarà vera come dimostrato matematicamente.

 
gumgum >>:


0.9*0.9*........*0.9->0 коридор сужаются = (0+@,1-@)

:) Prendete la media dei 20.

 
SProgrammer >>:

Нет распределение будет сохранятся это доказывается математически.


Sbagliato. Questo (0-@,1-@) è il nuovo confine. Se si prende la media, allora il corridoio si restringe al punto centrale.
 
gumgum >>:


Ошибся. Вот так (0-@,1-@) будут новые граници. Если брать среднееи то тогда Коридор сужаеться к центральной точке.

8-) Ti ho dato un link a un generatore casuale VERO, sul rumore atmosferico. Cos'è che non è abbastanza? :)



http://www.random.org/

RANDOM.ORG offre veri numeri casuali a chiunque su Internet. La casualità proviene dal rumore atmosferico, che per molti scopi è meglio degli algoritmi di numeri pseudo-casuali usati tipicamente nei programmi per computer. La gente usa RANDOM.ORG per tenere disegni, lotterie e concorsi a premi, per guidare giochi e siti di gioco d'azzardo, per applicazioni scientifiche e per arte e musica.

 
SProgrammer >>:

8-) Я же Вам дал ссылку на ИСТИННО случайный генератор, на атмосферных шумах. Что опять не достаточно ? :)



http://www.random.org/



Lei mi ha suggerito.... ma questa non è una soluzione per me (con il vostro permesso). Ti ho già dato il modo di generare i numeri, ho solo pensato che ci fosse un modo più veloce (Mathemat ha suggerito la possibilità di accelerare l'algoritmo). Penso che un dll sarebbe la soluzione migliore.
 

Va più o meno così... quando rsign=1 [-1,1].... quando rsign=0 [0,1]

double ranD(int rsign,int rstep)
{

double rand=0; 
   for(int i=1; i<= rstep; i++)
   {
   if(MathRand()+1>16383.5){rand+=MathPow(2,- i);}
   }
      if( rsign==1)
         {
         rand=2*rand-1;
         }

return(rand);
}
Grazie a Mathemat per l'idea. O forse ho sbagliato?