Pascal. Задача 8-10
Пользователь вводит четыре числа. Найти и вывести наибольший общий делитель этих чисел.
Примечание: Для нахождения наибольшего общего делителя двух чисел лучше воспользоваться алгоритмом Евклида, который заключается в вычитании из большего числа меньшее, пока они не сравняются.
Решение
var
a, b, c, d : integer;
function NOD(x, y : integer) :integer;
begin
while x <> y do
if x > y then x := x - y
else y := y - x;
result := x;
end;
begin
Write('Введите четыре числа: ');
Readln(a, b, c, d);
Writeln('Наибольший общий делитель: ', NOD(NOD(a, b), NOD(c, d)));
end.