Knuth shuffle: Difference between revisions

Content added Content deleted
Line 3,650: Line 3,650:
}
}
}</lang>
}</lang>

=={{header|Picat}}==
<lang Picat>go =>
_ = random2(),
L = 1..10,
println(l_before=L),
knuth_shuffle(L),
println('l_after '=L),
nl.

knuth_shuffle(L) =>
foreach(I in L.len..-1..1)
J = random(1,I),
Tmp = L[I],
L[I] := L[J],
L[J] := Tmp
end.</lang>

Output:
<pre>l_before = [1,2,3,4,5,6,7,8,9,10]
l_after = [2,9,6,7,10,3,5,4,8,1]</pre>


=={{header|PicoLisp}}==
=={{header|PicoLisp}}==