<snapdata remixID="11820533"><project name="linear congruential generator" app="Snap! 7, https://snap.berkeley.edu" version="2"><notes>making PRNG in a language that already has it</notes><thumbnail>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAB4CAYAAAB1ovlvAAAABHNCSVQICAgIfAhkiAAAA2lJREFUeF7t0r1KY2EYhdFX7CxFJIX4A/bWBryBKEHBVrCyt7a20EawVBCCrWhtZxGsvQKxFBG8hJk5B0bMyAhBmA3DClh95zs7eVwTP359ykeBUIEJAEPlzbYFAAQhWgDAaH7jADIQLQBgNL9xABmIFgAwmt84gAxECwAYzW8cQAaiBQCM5jcOIAPRAgBG8xsHkIFoAQCj+Y0DyEC0AIDR/MYBZCBaAMBofuMAMhAtAGA0v3EAGYgWADCa3ziADEQLABjNbxxABqIFAIzmNw4gA9ECAEbzGweQgWgBAKP5jQPIQLQAgNH8xgFkIFoAwGh+4wAyEC0AYDS/cQAZiBYAMJrfOIAMRAsAGM1vHEAGogUAjOY3DiAD0QIARvMbB5CBaAEAo/mNA8hAtACA0fzGAWQgWgDAaH7jADIQLQBgNL9xABmIFgAwmt84gAxECwAYzf/1+OXlZe3s7Iz9DZs7zd2rq6va3t4e+/6/vADgN2vf399Xt9tt3/L29lZnZ2f1/PxcJycndX19XZ1O5/384OCgDg8PRxY/3m8Ojo6O3u83iBYXF2ttbW3kzv7+fvv+Btjt7W2dn59/+hUXFxfV7/drZmZm5GwwGNTDw0N7/2/v/2aSsa4DOFauzw/v7u7W8fFxzc7OtofNP3Vpaanm5+fbvz/P9/b2WqS/Px/Ph8Nhi2l9fb2mpqZa0Hd3d7WxsVFbW1vvd5rn5ubmanp6ul5eXmp5eXnkizXv6PV69fr6WisrK3Vzc1Obm5v19PRUp6entbq6+uX7v5lkrOsAjpXr/3n48fGxFhYWanJyMvqjAIzmNw4gA9ECAEbzGweQgWgBAKP5jQPIQLQAgNH8xgFkIFoAwGh+4wAyEC0AYDS/cQAZiBYAMJrfOIAMRAsAGM1vHEAGogUAjOY3DiAD0QIARvMbB5CBaAEAo/mNA8hAtACA0fzGAWQgWgDAaH7jADIQLQBgNL9xABmIFgAwmt84gAxECwAYzW8cQAaiBQCM5jcOIAPRAgBG8xsHkIFoAQCj+Y0DyEC0AIDR/MYBZCBaAMBofuMAMhAtAGA0v3EAGYgWADCa3ziADEQLABjNbxxABqIFAIzmNw4gA9ECAEbzGweQgWgBAKP5jQPIQLQAgNH8xgFkIFoAwGh+4wAyEC0AYDS/8Z/yN1O3gngzkQAAAABJRU5ErkJggg==</thumbnail><scenes select="1"><scene name="linear congruential generator"><notes>making PRNG in a language that already has it</notes><hidden></hidden><headers></headers><code></code><blocks><block-definition s="LCG where m = %&apos;m&apos; , a = %&apos;a&apos; , c = %&apos;c&apos; , seed = %&apos;seed&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n"></input><input type="%n"></input><input type="%n"></input><input type="%n"></input></inputs><script><block s="doReport"><block s="reportModulus"><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block var="a"/><block var="c"/></list></block><block var="seed"/></list></block><block var="m"/></block></block></script></block-definition><block-definition s="modifying generator for %&apos;f&apos; starting at %&apos;s&apos;" type="reporter" category="operators"><variables><list struct="atomic" id="23">value</list></variables><header></header><code></code><translations></translations><inputs><input type="%repRing"></input><input type="%s"></input></inputs><script><block s="doIf"><block s="reportEquals"><block var="value"/><l>0</l></block><script><block s="doSetVar"><l>value</l><block var="s"/></block></script></block><block s="doSetVar"><l>value</l><block s="evaluate"><block var="f"/><list><block var="value"/></list></block></block><block s="doReport"><block var="value"/></block></script></block-definition><block-definition s="random float between %&apos;lower&apos; and %&apos;upper&apos;" type="reporter" category="operators"><header></header><code></code><translations></translations><inputs><input type="%n">1</input><input type="%n">10</input></inputs><script><block s="doReport"><block s="reportVariadicSum"><list><block s="reportVariadicProduct"><list><block s="reportQuotient"><custom-block s="modifying generator for %repRing starting at %s"><block s="reifyReporter"><autolambda><custom-block s="LCG where m = %n , a = %n , c = %n , seed = %n"><block s="reportPower"><l>2</l><l>31</l></block><l>1103515245</l><l>12345</l><l></l></custom-block></autolambda><list></list></block><block s="reportDate"><l><option>time in milliseconds</option></l></block><variables><variable name="value"><l>0</l></variable></variables></custom-block><block s="reportPower"><l>2</l><l>31</l></block></block><block s="reportDifference"><block var="upper"/><block var="lower"/></block></list></block><block var="lower"/></list></block></block></script></block-definition></blocks><stage name="Stage" width="480" height="360" costume="0" color="255,255,255,1" tempo="60" threadsafe="false" penlog="false" volume="100" pan="0" lines="round" ternary="false" hyperops="true" codify="false" inheritance="true" sublistIDs="false" id="86"><pentrails>data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAAFoCAYAAACPNyggAAAABHNCSVQICAgIfAhkiAAAFphJREFUeF7t3H3InXUZB3CnawYGRZaBUP6hEJNg0QsFZkkFMTN1kBhWuKSWRWZEkKW2hi+llVRClpD0R1G25jbn6M3K/ugVS1tmpSW9YJmWL71oonNdt5wTp/k8O2eTZ989XZ/B4Xk897nv674+14/zPfc553HJfv4RIECAAAECe11gyV6vqCABAgQIECCwnwC2CAgQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQEMABdCUJECBAgIAAtgYIECBAgEBAQAAH0JUkQIAAAQIC2BogQIAAAQIBAQEcQFeSAAECBAgIYGuAAAECBAgEBARwAF1JAgQIECAggK0BAgQIECAQEBDAAXQlCRAgQICAALYGCBAgQIBAQEAAB9CVJECAAAECAtgaIECAAAECAQEBHEBXkgABAgQICGBrgAABAgQIBAQEcABdSQIECBAgIICtAQIECBAgEBAQwAF0JQkQIECAgAC2BggQIECAQEBAAAfQlSRAgAABAgLYGiBAgAABAgEBARxAV5IAAQIECAhga4AAAQIECAQEBHAAXUkCBAgQICCArQECBAgQIBAQ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</pentrails><costumes><list struct="atomic" id="87"></list></costumes><sounds><list struct="atomic" id="88"></list></sounds><variables></variables><blocks></blocks><scripts><script x="130" y="284"><custom-block s="modifying generator for %repRing starting at %s"><block s="reifyReporter"><autolambda><custom-block s="LCG where m = %n , a = %n , c = %n , seed = %n"><block s="reportVariadicSum"><list><block s="reportPower"><l>2</l><l>16</l></block><l>1</l></list></block><l>75</l><l>74</l><l></l></custom-block></autolambda><list></list></block><l>anything you like</l><variables><variable name="value"><l>55501</l></variable></variables><comment w="167" collapsed="false">change the value for `starting at` and try running this multiple times (it uses a block variable)</comment></custom-block></script><script x="161" y="245"><custom-block s="LCG where m = %n , a = %n , c = %n , seed = %n"><block s="reportVariadicSum"><list><block s="reportPower"><l>2</l><l>16</l></block><l>1</l></list></block><l>75</l><l>74</l><l></l><comment w="118" collapsed="true">As used by the ZX81</comment></custom-block></script><script x="373" y="173"><custom-block s="random float between %n and %n"><l>1</l><l>10</l><comment w="374" collapsed="false">Like `pick random x to y` but using the LCG with the same parameters as used by glibc (except without bit truncation), returning a real number</comment></custom-block></script></scripts><sprites select="0"><sprite name="Sprite" idx="1" x="152" y="0" heading="90" scale="1" volume="100" pan="0" rotation="1" draggable="true" hidden="true" costume="0" color="80,80,80,1" pen="tip" id="130"><costumes><list struct="atomic" id="131"></list></costumes><sounds><list struct="atomic" id="132"></list></sounds><blocks></blocks><variables></variables><scripts><script x="46" y="20.333333333333343"><block s="receiveGo"></block><block s="hide"></block><block s="gotoXY"><l>0</l><l>0</l></block><block s="clear"></block><block s="write"><l>check code on Stage</l><l>16</l></block></script></scripts></sprite></sprites></stage><variables></variables></scene></scenes></project><media name="linear congruential generator" app="Snap! 7, https://snap.berkeley.edu" version="2"></media></snapdata>