6.Определите, что делает данный алгоритм, и опишите нерекурсивный алгоритм, который делает то же самое. Какое значение высчитает процедура F после выполнения алгоритма, если a= 15, b= 70?Примечание:в качестве a и b на вход алгоритму подаются целые неотрицательные числа.
1) при 15 и 70 выведет 5
2)
var a, b:integer;
begin
a:=15;
b:=70;
while (a <> 0) and (b <> 0) do begin
if a > b then a:= a - b
else b:= b - a;
end;
writeln(a+b);
end.
Объяснение:
Можно заметить, что данный алгоритм является рекурсивной версией Алгоритма Евклида находящим НОК двух чисел.
Значит все, что нам нужно это переписать данный алгоритм в циклическом виде While