Составьте программу нахождения наибольшего общего делителя для двух чисел....

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

Составьте программу нахождения наибольшего общего делителя для двух чисел. (Воспользоваться алгоритмом Евклида). Алгоритм Евклида поиска наибольшего общего делителя двух чисел: вычитай из большего меньшее, пока числа не станут равны. Полученное значение и будет искомым.


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

Var  a, b: word;
function NOD(x, y: integer):integer;
begin 
repeat    
 if abs(x) > abs(y) then      
 x := x mod y    
else    
  y := y mod x;  
until (x = 0) or (y = 0); 
  NOD := abs(x + y);
 end;
begin 
 write('a=');read(a);  
 write('b=');readln(b); 
writeln('NOD(a,b)=', NOD(a, b)); 
end.

(62 баллов)