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}}==