Post Reply 
(PC-1211) Multiple Dice Throw
03-23-2021, 02:43 PM (This post was last modified: 03-23-2021 02:50 PM by robve.)
Post: #6
RE: (PC-1211) Multiple Dice Throw
(03-20-2021 11:48 AM)SlideRule Wrote:    70: B=997B+π :B=B-INT B:C=INT 6B+1

Thank you for sharing this code!

Line 70 uses an interesting pseudo-random number generator. The PRNG is very simple, yet seems to be good enough to reliably simulate multiple dice throws, perhaps. It passes the spectral test when I tested this with a simple program on a PC-1350 (select image to view):

   

10 "A" CLS: WAIT 0: B=0
20 FOR I=1 TO 32*150
30 B=997*B+π,B=B-INT B:X=150*B
40 B=997*B+π,B=B-INT B:Y=32*B
50 PSET (X,Y)
60 NEXT I
70 WAIT: GPRINT: END

Disclaimer: this spectral test code may not meet official test requirements.

By comparison, the PC-1350 RND function spectacularly fails the spectral test, so I would not use it to throw dice for example (select image to view):

   

10 "A" CLS: WAIT 0: FOR I=1 TO 32*150: PSET (RND 150-1,RND 32-1): NEXT I: WAIT: GPRINT: END

The number 997 is used by other PRNGs. See also previous HP Forum threads on this subject:
https://hpmuseum.org/forum/thread-7196.html
https://hpmuseum.org/forum/thread-2041.html

- Rob

"I count on old friends" -- HP 71B,Prime|Ti VOY200,Nspire CXII CAS|Casio fx-CG50...|Sharp PC-G850,E500,2500,1500,14xx,13xx,12xx...
Visit this user's website Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
(PC-1211) Multiple Dice Throw - SlideRule - 03-20-2021, 11:48 AM
RE: (PC-1211) Multiple Dice Throw - C.Ret - 03-21-2021, 09:29 AM
RE: (PC-1211) Multiple Dice Throw - robve - 03-23-2021 02:43 PM
RE: (PC-1211) Multiple Dice Throw - robve - 03-23-2021, 03:56 PM
RE: (PC-1211) Multiple Dice Throw - pyedog - 03-23-2021, 04:06 PM



User(s) browsing this thread: 1 Guest(s)