Sign in
plan9port
/
plan9
/
32c6e78c6c4c13b63d8dc30aa395cfcc6e686c0a
/
.
/
src
/
lib9
/
lnrand.c
blob: 5b648d08ce2707d1c08c4f2edbf06706673fb28a [
file
] [
log
] [
blame
]
#include
<u.h>
#include
<libc.h>
#define
MASK
0x7fffffffL
long
lnrand
(
long
n
)
{
long
slop
,
v
;
if
(
n
<
0
)
return
n
;
slop
=
MASK
%
n
;
do
v
=
lrand
();
while
(
v
<=
slop
);
return
v
%
n
;
}