ответ:
алгоритм- это конечная совокупность точно заданных правил решения произвольного класса или набор инструкций, описывающих порядок действий исполнителя для решения некоторой . в старой трактовке вместо слова «порядок» использовалось слово «последовательность», но по мере развития параллельности в работе компьютеров слово «последовательность» стали заменять более общим словом «порядок». независимые инструкции могут выполняться в произвольном порядке, параллельно, если это позволяют используемые исполнители.
ранее в языке писали «алгорифм», сейчас такое написание используется редко, но, тем не менее, имеет место исключение (нормальный алгорифм маркова).
часто в качестве исполнителя выступает компьютер, но понятие алгоритма необязательно относится к компьютерным программам, так, например, чётко описанный рецепт приготовления блюда также является алгоритмом, в таком случае исполнителем является человек (а может быть и некоторый механизм, ткацкий станок, и
можно выделить алгоритмы вычислительные (о них в основном идет далее речь), и . вычислительные по сути преобразуют некоторые начальные данные в выходные, реализуя вычисление некоторой функции. семантика алгоритмов существенным образом может отличаться и сводиться к выдаче необходимых воздействий либо в заданные моменты времени, либо в качестве реакции на внешние события (в этом случае, в отличие от вычислительного алгоритма, может оставаться корректным при бесконечном выполнении).
понятие алгоритма относится к первоначальным, основным, базисным понятиям . вычислительные процессы алгоритмического характера (арифметические действия над целыми числами, нахождение наибольшего общего делителя двух чисел и т. д.) известны человечеству с глубокой древности. однако в явном виде понятие алгоритма сформировалось лишь в начале xx века.
Объявляем функцию gcd, принимающую два целочисленных параметра и возвращающую их наибольший общий делитель. Здесь это вычисляется при алгоритма Евклида.
Затем для удобства определяем ещё одну функцию gcd3, которая принимает уже три аргумента и, используя указанную в условии формулу и описанную выше функцию gcd, вычисляет НОД от трёх чисел.
В основной части программы просто три числа считываются с клавиатуры и выводится ответ.
Код (PascalABC.NET v3.6.2316):
function gcd(a, b: integer): integer;
begin
while a * b <> 0 do
(a, b) := (b, a mod b);
Result := a + b
end;
function gcd3(a, b, c: integer) := gcd(gcd(a, b), c);
begin
var (a, b, c) := ReadInteger3;
print(gcd3(a, b, c))
end.
Пример ввода:
10 40 20
Пример вывода:
10