Sorting algorithms/Bogosort: Difference between revisions

no edit summary
(Added BASIC256)
No edit summary
 
(2 intermediate revisions by 2 users not shown)
Line 1,185:
}
}</syntaxhighlight>
 
=={{header|EasyLang}}==
<syntaxhighlight>
proc shuffle . l[] .
for i = len l[] downto 2
r = randint i
swap l[i] l[r]
.
.
proc issorted . l[] r .
for i = 2 to len l[]
if l[i] < l[i - 1]
r = 0
return
.
.
r = 1
.
proc bogosort . l[] .
repeat
issorted l[] r
until r = 1
shuffle l[]
.
.
list[] = [ 2 7 41 11 3 1 6 5 8 ]
bogosort list[]
print list[]
</syntaxhighlight>
 
{{out}}
<pre>
[ 1 2 3 5 6 7 8 11 41 ]
</pre>
 
=={{header|Eiffel}}==
Line 1,348 ⟶ 1,382:
iex(114)> Sort.bogo_sort([5,3,9,4,1,6,8,2,7])
[1, 2, 3, 4, 5, 6, 7, 8, 9]
</pre>
 
=={{header|EMal}}==
<syntaxhighlight lang="emal">
type BogoSorter
fun inOrder ← logic by List list
if list.length ≤ 1 do return true end
for int i ← 1; i < list.length; ++i
if list[i] < list[i - 1] do return false end
end
return true
end
fun shuffle ← <List list|list.shuffle()
fun sort ← void by List list
while not inOrder(list)
shuffle(list)
end
end
type Main
List sample ← int[3, 4, 1, 8, 7, 4, -2]
BogoSorter.sort(sample)
sample.list(<int n|write(n + " "))
writeLine()
</syntaxhighlight>
{{out}}
<pre>
-2 1 3 4 4 7 8
</pre>
 
Line 3,549 ⟶ 3,610:
=={{header|Wren}}==
{{libheader|Wren-sort}}
<syntaxhighlight lang="ecmascriptwren">import "random" for Random
import "./sort" for Sort
 
var bogoSort = Fn.new { |a|
226

edits