private double GenerateStandardNormalDistributedValue() { var u1 = U1Generator.NextDouble(); var u2 = U2Generator.NextDouble(); return(Math.Sqrt(-2 * Math.Log(u1)) * Math.Cos(2 * Math.PI * u2)); }
private string GenerateWord(int length) { var result = ""; for (int i = 0; i < length; i++) { result += Alphabet[U1Generator.Next(0, 26)]; } return(result.ToLowerInvariant()); }
private double GenerateExpotentialDistributedValue(double lambda = 1) { var u = U1Generator.NextDouble(); return(Math.Log(1 - u) / -lambda); }