Функция, вычисляющая наибольший общий делитель, в Pascal

Написать функцию, вычисляющую наибольший общий делитель.

Алгоритм решения задачи:

Оформление алгоритмов вычисления наибольшего общего делителя в виде функций удобно, если в задаче требуется несколько или множество раз использовать данный алгоритм, по отношению к различным исходным данным.

Программа на языке Паскаль:

var
    k, l, n: integer;

function nod (var a,b: integer): integer;
    var c: integer;
    begin
        repeat
            if a > b then
                a := a mod b
            else
                b := b mod a;
        until (a = 0) or (b = 0);

        nod := a + b;
    end;

begin

    writeln ('Введите два числа: ');
    readln (k, l);

    n := nod (k, l);

    writeln ('НОД = ', n);

end.