Knuth shuffle: Difference between revisions
Content added Content deleted
m (→{{header|Picat}}: Added {{out}}) |
(Knuth shuffle in True BASIC) |
||
Line 1,125: | Line 1,125: | ||
When it has finished, the screen will show (for example): |
When it has finished, the screen will show (for example): |
||
<pre>lcjbpxekzsaygumwnovfdtiqrh</pre> |
<pre>lcjbpxekzsaygumwnovfdtiqrh</pre> |
||
==={{header|True BASIC}}=== |
|||
{{trans|BASIC}} |
|||
<lang qbasic>OPTION BASE 0 |
|||
RANDOMIZE |
|||
DIM cards(51) |
|||
PRINT "before:" |
|||
FOR L0 = 0 TO 51 |
|||
LET cards(L0) = L0 |
|||
PRINT LTRIM$(STR$(cards(L0))); " "; |
|||
NEXT L0 |
|||
FOR L0 = 51 TO 0 STEP -1 |
|||
LET card = INT(RND * (L0 + 1)) |
|||
IF card <> L0 THEN |
|||
LET t = cards(lb + L0) |
|||
LET cards(lb + L0) = cards(lb + card) |
|||
LET cards(lb + card) = t |
|||
END IF |
|||
NEXT L0 |
|||
PRINT |
|||
PRINT "after:" |
|||
FOR L0 = 0 TO 51 |
|||
PRINT LTRIM$(STR$(cards(L0))); " "; |
|||
NEXT L0 |
|||
END</lang> |
|||
{{out}} |
|||
<pre>Same as BASIC entry.</pre> |
|||
==={{header|BBC BASIC}}=== |
==={{header|BBC BASIC}}=== |