Knuth shuffle: Difference between revisions
Content added Content deleted
m (→{{header|Sidef}}: modified code to work with Sidef 2.10) |
(Added uBasic/4tH version) |
||
Line 2,946: | Line 2,946: | ||
</pre> |
</pre> |
||
=={{header|uBasic/4tH}}== |
|||
<lang>PRINT "before:" |
|||
FOR L = 0 TO 51 |
|||
@(L) = L |
|||
PRINT @(L); " "; |
|||
NEXT |
|||
FOR L = 51 TO 0 STEP -1 |
|||
C = RND(L + 1) |
|||
IF C # L THEN |
|||
PUSH @(C), L, @(L), C |
|||
GOSUB 100 |
|||
ENDIF |
|||
NEXT |
|||
PRINT : PRINT "after:" |
|||
FOR L = 0 TO 51 |
|||
PRINT @(L); " "; |
|||
NEXT |
|||
PRINT |
|||
END |
|||
100 @(POP()) = POP() : @(POP()) = POP() : RETURN</lang> |
|||
{{out}} |
|||
<pre>before: |
|||
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
|||
after: |
|||
19 4 49 9 27 35 50 11 2 29 22 48 33 15 17 42 47 28 41 18 34 21 30 39 3 8 23 12 36 26 0 46 7 44 13 14 16 40 10 25 31 32 51 24 20 38 45 6 43 1 5 37</pre> |
|||
=={{header|UNIX Shell}}== |
=={{header|UNIX Shell}}== |
||
{{works with|ksh93}} |
{{works with|ksh93}} |