Sorting algorithms/Insertion sort: Difference between revisions

Added uBasic/4tH version
(Added uBasic/4tH version)
Line 2,352:
:Return
 
=={{header|uBasic/4tH}}==
<lang>PRINT "Insertion sort:"
n = FUNC (_InitArray)
PROC _ShowArray (n)
PROC _Insertionsort (n)
PROC _ShowArray (n)
PRINT
END
 
 
_Insertionsort PARAM (1) ' Insertion sort
LOCAL (3)
 
FOR b@ = 1 TO a@-1
c@ = @(b@)
d@ = b@
DO WHILE (d@>0) * (c@ < @(ABS(d@-1)))
@(d@) = @(d@-1)
d@ = d@ - 1
LOOP
@(d@) = c@
NEXT
RETURN
_Swap PARAM(2) ' Swap two array elements
PUSH @(a@)
@(a@) = @(b@)
@(b@) = POP()
RETURN
_InitArray ' Init example array
PUSH 4, 65, 2, -31, 0, 99, 2, 83, 782, 1
FOR i = 0 TO 9
@(i) = POP()
NEXT
RETURN (i)
_ShowArray PARAM (1) ' Show array subroutine
FOR i = 0 TO a@-1
PRINT @(i),
NEXT
PRINT
RETURN</lang>
=={{header|UnixPipes}}==
<lang bash>selectionsort() {
374

edits