public float nextCentral ( ) { // Average 12 uniformly-distributed random values. float sum = 0.0f ; for ( int j = 0 ; j < 12 ; ++ j ) sum += GENERATOR . nextFloat ( ) ; // Subtract 6 to center about 0. return m_fStddev * ( sum - 6 ) + m_fMean ; }
Compute the next random value using the Central Limit Theorem which states that the averages of sets of uniformly - distributed random values are normally distributed .