Random Numbers in Scilab

Here’s the translation of the Go code example for random numbers into Scilab, formatted in Markdown suitable for Hugo:

Our example demonstrates how to generate random numbers in Scilab.

// For example, rand() returns a random number between 0 and 1
disp(floor(rand() * 100));
disp(floor(rand() * 100));

// rand() returns a float between 0.0 and 1.0
disp(rand());

// This can be used to generate random floats in other ranges, for example 5.0 <= f' < 10.0
disp((rand() * 5) + 5);
disp((rand() * 5) + 5);

// If you want a known seed, use the grand function
// and set the seed using grand("setsd", seed)
grand("setsd", 42);
disp(floor(grand(1, 1, "unf", 0, 100)));
disp(floor(grand(1, 1, "unf", 0, 100)));

// Using the same seed will produce the same sequence of random numbers
grand("setsd", 42);
disp(floor(grand(1, 1, "unf", 0, 100)));
disp(floor(grand(1, 1, "unf", 0, 100)));

To run the script, save it as random_numbers.sce and execute it in Scilab:

--> exec('random_numbers.sce', -1)

Some of the generated numbers may be different when you run the sample.

Scilab provides various functions for random number generation. The rand() function generates uniform random numbers between 0 and 1. The grand() function offers more advanced random number generation capabilities, including setting a seed for reproducibility.

For more information on random number generation in Scilab, refer to the official documentation on random number functions.