Drand48 ()

Da Gambas-it.org - Wikipedia.
Versione del 4 nov 2017 alle 09:05 di Vuott (Discussione | contributi) (Creata pagina con "La funzione della libreria di C void drand48 (void) restituisce un numero pseudo-casuale nell'intervallo 0.0 - 1.0. Il generatore casuale utilizzato è l'algoritmo congruente...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

La funzione della libreria di C

void drand48 (void)

restituisce un numero pseudo-casuale nell'intervallo 0.0 - 1.0. Il generatore casuale utilizzato è l'algoritmo congruente lineare e l'aritmetica con intero a 48 bit. Prima della prima chiamata alla funzione "drand48( )", è necessario chiamare la funzione "srand48( )" o la funzione "seed48( )" per inizializzare il "seme" casuale.


Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché bisognerà dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:

Private Extern drand48(void) As Float In "libc:6"


Semplice esempio di uso in Gambas:

Library "libc:6"

' void srand48 (long int __seedval)
' Seed random number generator.
Private Extern srand48(__seedval As Long)

' double drand48 (void)
' Return non-negative, double-precision floating-point value in [0.0,1.0).
Private Extern drand48() As Float
 

Public Sub Main()
 
 Dim f As Float
  
  srand48(Val(Scan(Str(CFloat(Now)), "*,*")[1]))
  
  f = drand48()
  
  Print f, "è un numero casuale compreso fra 0,0 e 1,0"
  
End



Riferimenti