Generate uniform pseudo-random integers from linear range.

Version (1.47 KB) by DS
RAND_INT(R,N) returns an n-by-n matrix containing pseudo-random integer values from range R.
Updated 27 Jan 2014

View License

Function that uses RAND to generate random integers in the specified linear range, as follows:

result = floor(a + (b-a+1).* rand(N)),
where specified range is [a b]

Please note: There are lots of ways to do this and lots of interesting submissions on FEX which provide similar results (see below).

random numbers:

#18443 - Random Integer Generator
#5346 - MYRANDINT -- Random Integer Generation
#27942 - WWW.RANDOM.ORG random integers/sequences/strings
#27809 - Unique Random Integer List
#13007 - Random Number Generator
#21353 - True Random Integer Generator (

random arrangement:

#30189 - RANDPERMFULL (derangement)
#17981 - RANDBLOCK
#27076 - Shuffle

Cite As

DS (2024). Generate uniform pseudo-random integers from linear range. (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2007b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Random Number Generation in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes

Modified code included as detailed in previous update.

Added a check for imaginary and non-integer range specifications. Thanks to Travis B for pointing out this edge-case behavior.

Fixed help format to accommodate LOOKFOR queries.

Thanks to Jan Simon for suggesting the use of numel instead of abusing the size function (see comments).