Лабораторная 3. Сортировки

  1. Используя лекционные материалы и язык программирования FreePascal, разработать и проверить 3 процедуры сортировки: пузырьковую, вставками и быструю.
    Заголовки процедур и сопутствующих функций должны быть следующими:

    type TCompareFunc=function(item1,item2:pointer):integer;
    
    item1 и item2 - указатели на сравниваемые элементы. Функция должна возвращать 0, если элементы равны; -1, если item1<item2; 1, если item1>item2.
    type TSortProc=procedure(base:pointer; nmemb,size:integer; cfunc:TCompareFunc);
    
    base - указатель на начало массива, nmemb - количество элементов массива, size - размер одного элемента массива, cfunc - функция сравнения
  2. Используя лекционные материалы и язык программирования Си, разработать и проверить 3 функции сортировки: пузырьковую, вставками и быструю.
    Заголовки функций должны соответствовать заголовку системной функции qsort.