Объясните пожалуйста, почему не работает программа поиска НОД двух числе по алгоритму Евклида.
Алгоритм на русском. Если а=b, то НОД = а или b. Если это не так, то выбираем из чисел наибольшее и вычитаем из него наименьшее. Получившееся значение присваиваем числу, которое было наибольшим. (Пример a=5, b=3, то a=5-3=2) Повторяем алгоритм пока a не станет равным b.
program Evklid;
var a, b: integer;
begin
writeln('Введите a и b');
readln(a);
readln(b);
m1: if a=b then writeln(a)
else;
if a>b then a:=a-b;
else b:=b-a;
goto m1;
writeln('НОД чисел',a,'и',b=a);
end.