Data update

This commit is contained in:
Ingy döt Net 2024-07-13 15:19:22 -07:00
parent 29a5eea0d4
commit 5c1bb7bfa9
2011 changed files with 35081 additions and 3229 deletions

View file

@ -0,0 +1,72 @@
dim array(15)
a = 0
b = arraysize(array(),1)
for i = a to b
array(i) = ran(1000)
next i
print "unsort ";
printArray(array())
mx = findMax(array())
mn = findMin(array())
countingSort(array(), mn, mx) // ordenar el array
print " sort ";
printArray(array())
end
sub findMax(array())
local length, i
length = arraysize(array(),1) - 1
if length = 0 return 0
if length = 1 return array(0)
mx = 0
for i = 1 to arraysize(array(),1)
if array(i) > mx mx = array(i)
next i
return mx
end sub
sub findMin(array())
local length, i
length = arraysize(array(),1) - 1
if length = 0 return 0
if length = 1 return array(0)
mn = 0
for i = 1 to arraysize(array(),1)
if array(i) < mn mn = array(i)
next i
return mn
end sub
sub countingSort(array(), mn, mx)
local number, z, i, ub
dim count(mx - mn)
ub = arraysize(array(),1)
for i = 0 to ub
number = array(i)
count(number - mn) = count(number - mn) + 1
next
z = 0
for i = mn to mx
while count(i - mn) > 0
array(z) = i
z = z + 1
count(i - mn) = count(i - mn) - 1
wend
next i
end sub
sub printArray(array())
for i = 0 to arraysize(array(),1)
print array(i) using("####");
if i = b then print ""; else print ", "; : fi
next i
print
end sub