Generate random numbers without repeating a value: Difference between revisions
Content added Content deleted
(→Python) |
(add RPL) |
||
Line 1,021: | Line 1,021: | ||
Elapsed time = 0.008 s |
Elapsed time = 0.008 s |
||
done... |
done... |
||
</pre> |
|||
=={{header|RPL}}== |
|||
'''Stand-alone implementation''' |
|||
≪ 0 → n r |
|||
≪ 1 n '''FOR''' j j '''NEXT''' |
|||
1 n '''START''' |
|||
n 1 - RAND * CEIL 1 + 'r' STO |
|||
r ROLL SWAP r ROLLD |
|||
n ROLL |
|||
'''NEXT''' |
|||
n →LIST |
|||
≫ ≫ '<span style="color:blue">SHUFFLE</span>' STO |
|||
'''Using Knuth shuffle''' |
|||
<code>KNUTH</code> is defined at [[Knuth shuffle#RPL|Knuth shuffle]] |
|||
≪ { } |
|||
1 ROT '''FOR''' j j + '''NEXT''' |
|||
<span style="color:blue">KNUTH </span> |
|||
≫ '<span style="color:blue">SHUFFLE</span>' STO |
|||
20 <span style="color:blue">SHUFFLE</span> |
|||
{{out}} |
|||
<pre> |
|||
1: { 3 13 14 1 7 10 4 9 12 11 16 15 18 17 20 6 19 8 2 5 } |
|||
</pre> |
</pre> |
||
Line 1,033: | Line 1,058: | ||
2 16 13 12 6 18 14 4 15 7 9 10 8 11 19 5 17 1 3 20 |
2 16 13 12 6 18 14 4 15 7 9 10 8 11 19 5 17 1 3 20 |
||
</pre> |
</pre> |
||
=={{header|Rust}}== |
=={{header|Rust}}== |
||
<syntaxhighlight lang="rust">// [dependencies] |
<syntaxhighlight lang="rust">// [dependencies] |