СРОЧНО!!! Паскаль.Напишите рекурсивную функцию,которая вычисляет НОД двух натуральных...

0 голосов
425 просмотров

СРОЧНО!!! Паскаль.Напишите рекурсивную функцию,которая вычисляет НОД двух натуральных чисел,используя модифицированный алгоритм Евклида Пример: Введите два натуральных числа 7006652 112307574 НОД (7006652,112307574)=1234


Информатика (25 баллов) | 425 просмотров
Дан 1 ответ
0 голосов

var a,b:integer;

function f(a,b:integer):integer;

begin

if (a<>0) and (b<>0) then begin

if (a>b) then

a:=a mod b else

b:=b mod a;

f(a,b);

end else

writeln(abs(a-b));

end;

BEGIN

writeln('Введите 2 натуральных числа');

readln(a,b);

write('НОД(',a,',',b,') = ');

f(a,b);

end.

(1.4k баллов)