Pseudo-random numbers/Middle-square method: Difference between revisions

Add Miranda
(added Arturo)
(Add Miranda)
Line 736:
675248 959861 333139 981593 524817 432883 387691 304311 605184 247673 341914 905183 356263 923325 529055 899193 548051 359898 526570 275964 156129 376264 574597 161712 150770 731592 226854 462737 125531 758031 610996 316112 926796 950825 681806 859421 604455 365847 844027 381576 600243 291659 649726 143875 700015 210006 102520 510350 457122 960522 602512 207106 892895 261481 372313 616969 650746 470356 234766 115074 242025 576100 891210 255264 159709 506964 124976 619000 161000 921000 241000 810006 109720 384786 602656 194254 734616 660667 480884 249421 210835 451397 759251 462081 518850 205322 157123 687637 844643 421797 912709 377186 269278 510641 754230 862892 582603 426255 693325 699555 377198
</syntaxhighlight>
 
=={{header|Miranda}}==
<syntaxhighlight lang="miranda">main :: [sys_message]
main = [Stdout (lay (map show numbers))]
where numbers = take 5 (randoms 6 seed)
seed = 675248
 
randoms :: num->num->[num]
randoms sz = tl . iterate (msq sz)
 
msq :: num->num->num
msq sz seed = sq div (10^(sz div 2)) mod 10^sz
where sq = seed^2</syntaxhighlight>
{{out}}
<pre>959861
333139
981593
524817
432883</pre>
 
=={{header|Nim}}==
2,093

edits