'Primer 12c: sortiranje umetanjem (insertion sort)
Sub insertionsort(niz() As Integer, n As Integer)
  Dim i as Integer, j as integer
  Dim kraj As Boolean
  Dim pom As Integer
  For i = 2 to n
        j = i - 1
        kraj = False
        Do
            If niz(j) > niz(j + 1) Then
                pom = niz(j + 1)
                niz(j + 1) = niz(j)
                niz(j) = pom
                j = j - 1
                If j < 1 Then kraj = True 'ovo je skraceni zapis If naredbe koja nema Else granu
                'If j < 1 Then 
                ' kraj = True
                'End If
            Else
                kraj = True
            End If
        Loop Until kraj
  Next
End Sub

'efikasnija verzija sa manje zamena
Sub insertionsort2(niz() As Integer, n As Integer)
  Dim i As Integer, j As Integer
  Dim novi As Integer
  Dim kraj As Boolean
  For i = 2 To n
        novi = niz(i)
        j = i - 1
        kraj = False
        Do
            If niz(j) > novi Then
                niz(j + 1) = niz(j)
                j = j - 1
                If j < 1 Then kraj = True 'ovo je skraceni zapis If naredbe koja nema Else granu
                'If j < 1 Then
                '   kraj = True
                'End If
            Else
                kraj = True
            End If
        Loop Until kraj
        niz(j + 1) = novi
  Next
End Sub