From 65eb8ccd4922cd702ac9e1462856aee44ada8db3 Mon Sep 17 00:00:00 2001 From: Jiri Pittner Date: Fri, 30 Oct 2026 21:14:40 +0100 Subject: [PATCH] bugfixes is random --- la_random.cc | 4 ++-- la_random.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/la_random.cc b/la_random.cc index 7bca304..2b21eb2 100644 --- a/la_random.cc +++ b/la_random.cc @@ -5,7 +5,7 @@ namespace LA { WEAK_SYMBOL double randdouble() {return random()/(1.+RAND_MAX);} WEAK_SYMBOL double randdoublesigned() {return 2.*random()/(1.+RAND_MAX)-1.;} -WEAK_SYMBOL int randint32() {return random();} -WEAK_SYMBOL uint64_t randint64() {uint64_t r = random(); r<<=32; r|= random(); return r; } +WEAK_SYMBOL unsigned int randint32() {unsigned int r = random(); r<<=1; r^= random(); return r;} +WEAK_SYMBOL uint64_t randint64() {uint64_t r = random(); r<<=31; r|= random(); r<<=2; r|= random()&3; return r; } //random() gives 31 bits }//namespace diff --git a/la_random.h b/la_random.h index ad4bb58..639633b 100644 --- a/la_random.h +++ b/la_random.h @@ -7,7 +7,7 @@ namespace LA { extern double randdouble(); extern double randdoublesigned(); -extern int randint32(); +extern unsigned int randint32(); extern uint64_t randint64(); //RANDOM numbers defaulting to standard library but switchable to user's functions