Sorting algorithms/Insertion sort: Difference between revisions

Add BCPL
(Add PL/M)
(Add BCPL)
Line 962:
350 NEXT
360 END DEF</lang>
 
=={{header|BCPL}}==
<lang bcpl>get "libhdr"
 
let insertionSort(A, len) be
for i = 1 to len-1 do
$( let value = A!i
let j = i-1
while j >= 0 & A!j > value do
$( A!(j+1) := A!j
j := j-1
$)
A!(j+1) := value
$)
let write(s, A, len) be
$( writes(s)
for i=0 to len-1 do writed(A!i, 4)
wrch('*N')
$)
let start() be
$( let array = table 4,65,2,-31,0,99,2,83,782,1
let length = 10
write("Before: ", array, length)
insertionSort(array, length)
write("After: ", array, length)
$)</lang>
{{out}}
<pre>Before: 4 65 2 -31 0 99 2 83 782 1
After: -31 0 1 2 2 4 65 83 99 782</pre>
 
=={{header|C}}==
2,135

edits