$constant ARRAY_SIZE = 10 var i, j, k, gap, temp = integer dim integer numbers(ARRAY_SIZE) comment populate array with random integers in range 1..100 end print "Unsorted:"; for i=1 to ARRAY_SIZE numbers(i) = int(rnd(1) * 100)+1) print numbers(i); next i print rem put in ascending order using Shell sort gap = ARRAY_SIZE / 2 while gap > 0 do begin for i = gap+1 to ARRAY_SIZE j = i - gap while j > 0 do begin k = j + gap if numbers(j) <= numbers(k) then j = 0 else begin temp = numbers(j) numbers(j) = numbers(k) numbers(k) = temp end j = j - gap end while next i gap = gap / 2 end while rem show result print "Sorted :"; for i = 1 to ARRAY_SIZE print numbers(i); next i print end