Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Weird random result
Message
From
01/09/2022 06:55:00
 
 
To
31/08/2022 19:36:47
John Ryan
Captain-Cooker Appreciation Society
Taumata Whakatangi ..., New Zealand
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
01684912
Message ID:
01684923
Views:
47
I have to manage the numbers generated. For example result of rand(75) + 1 could be 1 and then result of rand(74) + 1 could also be 1. So I have to have a cursor containing humbers I don't want anymore.

>>>Can anybody explain me why there seems to be a problem with random numbers and a delay?
>
>Certainly seems odd...
>
>Re the randomizing code: if I read it correctly, starting thisform.nTot at 75 then decrementing after each hit means 75 can only ever appear first in the sequence since thisform.nTot then decrements to 74; and 74 can only appear first or second, etc etc. This means you can anticipate a preponderance of lower duplicates that can often follow very similar sequence as nTot decrements towards 1, while higher numbers are infrequent and always earlier than (77-n) in the sequence if they do appear.
>
>To randomize all numbers in a series, I've seen efforts like this that scatter high and low values and eliminate duplicate returns:
>
>
>=rand(-1)
>declare laNumber(75)
>for licounter=1 to 75
>   laNumber(m.licounter)=m.licounter
>endfor
>for licounter=1 to 75
>   liRandom=int(rand()*(76-m.licounter))+1
>  ? lanumber(m.lirandom)
>  adel(lanumber,m.liRandom)
>  *WAIT timeout 8
>ENDFOR
>
*******************************************************
Save a tree, eat a beaver.
Denis Chassé
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform