erand48 - Linux


erand48 is a Linux command that generates pseudorandom numbers using a 48-bit seed. It is designed for portability and performance, making it suitable for both numerical simulations and statistical applications.


erand48(unsigned short xseed[3]) -> double
  • xseed: A 3-element array that holds the seed for the random number generator.




Generate a single random number:

seed = {1, 2, 3};
x = erand48(seed);

Generate a series of random numbers:

srand48(5); // initialize seed
for (i = 0; i < 10; i++) {
  x = erand48();
  printf("%f\n", x);

Common Issues

  • Non-randomness: If the seed is not properly initialized, erand48 may generate predictable sequences of numbers.
  • Precision: erand48 produces double-precision floating-point numbers, which have limitations in precision and range.


erand48 can be used with other commands or tools for:

  • Random sampling: Generating random samples from a population.
  • Monte Carlo simulations: Simulating random processes and estimating outcomes.
  • Data scrambling: Anonymizing or obfuscating sensitive data.

Related Commands

  • rand: A more basic pseudorandom number generator.
  • srandom: A seed initialization function for rand.
  • drand48: A double-precision random number generator with a 48-bit seed.