program EuclideanAlgorithm;
var
a, b, temp: integer;
begin
// Ввод чисел
writeln('3 7:');
readln(a, b);
// Обработка отрицательных чисел (НОД определяется для положительных)
if a < 0 then
a:= -a;
if b < 0 then
b:= -b;
// Алгоритм Евклида
while b <> 0 do
begin
temp:= b;
b:= a mod b;
a:= temp;
end;
// Вывод результата
writeln('НОД =', a);
end.
cHJvZ3JhbSBFdWNsaWRlYW5BbGdvcml0aG07Cgp2YXIKIGEsIGIsIHRlbXA6IGludGVnZXI7CgpiZWdpbgogLy8g0JLQstC+0LQg0YfQuNGB0LXQuwogd3JpdGVsbignMyA3OicpOwogcmVhZGxuKGEsIGIpOwoKIC8vINCe0LHRgNCw0LHQvtGC0LrQsCDQvtGC0YDQuNGG0LDRgtC10LvRjNC90YvRhSDRh9C40YHQtdC7ICjQndCe0JQg0L7Qv9GA0LXQtNC10LvRj9C10YLRgdGPINC00LvRjyDQv9C+0LvQvtC20LjRgtC10LvRjNC90YvRhSkKIGlmIGEgPCAwIHRoZW4KIGE6PSAtYTsKIGlmIGIgPCAwIHRoZW4KIGI6PSAtYjsKCiAvLyDQkNC70LPQvtGA0LjRgtC8INCV0LLQutC70LjQtNCwCiB3aGlsZSBiIDw+IDAgZG8KIGJlZ2luCiB0ZW1wOj0gYjsKIGI6PSBhIG1vZCBiOwogYTo9IHRlbXA7CiBlbmQ7CgogLy8g0JLRi9Cy0L7QtCDRgNC10LfRg9C70YzRgtCw0YLQsAogd3JpdGVsbign0J3QntCUID0nLCBhKTsKZW5kLg==