Sorting algorithms/Bogosort: Difference between revisions
Content added Content deleted
(Added BASIC256) |
|||
Line 798: | Line 798: | ||
} |
} |
||
}</syntaxhighlight> |
}</syntaxhighlight> |
||
=={{header|BASIC256}}== |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="vb">global array |
|||
dim array = {10, 1, 2, -6, 3} |
|||
lb = array[?,]-1 : ub = array[?]-1 |
|||
print "unsort "; |
|||
for i = lb to ub |
|||
print rjust(array[i], 4); |
|||
next i |
|||
call Bogosort(array) # ordenar el array |
|||
print chr(10); " sort "; |
|||
for i = lb to ub |
|||
print rjust(array[i], 4); |
|||
next i |
|||
end |
|||
subroutine shuffle(array) |
|||
n = array[?] : m = array[?]*2 |
|||
for k = 1 to m |
|||
i = int(Rand*n) |
|||
j = int(Rand*n) |
|||
tmp = array[i] #swap lb(i), lb(j) |
|||
array[i] = array[j] |
|||
array[j] = tmp |
|||
next k |
|||
end subroutine |
|||
function inorder(array) |
|||
n = array[?] |
|||
for i = 0 to n-2 |
|||
if array[i] > array[i+1] then return false |
|||
next i |
|||
return true |
|||
end function |
|||
subroutine Bogosort(array) |
|||
while not inorder(array) |
|||
call shuffle(array) |
|||
end while |
|||
end subroutine</syntaxhighlight> |
|||
=={{header|BBC BASIC}}== |
=={{header|BBC BASIC}}== |