6.Определите, что делает данный алгоритм, и опишите нерекурсивный алгоритм, который делает то же самое. Какое значение высчитает процедура F после выполнения алгоритма, если a= 15, b= 70?Примечание:в качестве a и b на вход алгоритму подаются целые неотрицательные числа.
Приложения:
![](https://st.uroker.com/files/95a/95a949154d8e586bf7b6a410e5fda020.png)
Ответы
Ответ дал:
1
Ответ:
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
Вас заинтересует
1 год назад
1 год назад
6 лет назад
8 лет назад