Implementazione del classico algoritmo di ordinamento ricorsivo Mergesort. Usa il principio di "Divide et Impera" per cui l'insieme dei dati di ingresso viene diviso in due sottoinsiemi che a loro volta vengono divisi ciascuno in due sottoinsiemi e così via fino ad ottenere degli insiemi costituiti da un elemento. A questo punto inizia la fase di merge che fonde ordinatamente i sottoinsiemi presi a coppie fino ad ottenere la sequenza iniziale ordinata.
Il VI riceve in ingresso il puntatore ad un array di double, gli indici iniziale e finale della porzione di array che si intende ordinare e un enum che indica se l'ordinamento deve avvenire in modo ascendente o discendente.