Найти наибольший общий делитель следующих чисел(16 32 40 64 80 128). Использовать процеду

Найти наибольший общий делитель следующих чисел(16 32 40 64 80 128). Использовать процедуру для нахождения общего делителя. ПАСКАЛЬ!!!
Гость
Ответ(ы) на вопрос:
Гость
Думаю нет большой разницы между процедурой и функцией, просто функция куда удобнее. Для нахождения нода используется алгоритм Эвклида //PascalABC.Net function NOD(A, B: integer): integer; begin     while A <> B do         if A > B then A := A - B else B := B - A;     NOD := A; end; procedure pNOD(A, B: integer; var NOD: integer); begin     while A <> B do         if A > B then A := A - B else B := B - A;     NOD := A; end; begin     var a: Array of integer := (16, 32, 40, 64, 80, 128);     var n := a[low(a)];     for var i := low(a) to high(a) do         pNOD(n, a[i], n);         Writeln(n); end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы