Помогите пожалуйста Даны две сцепленные шестеренки. У одной шестеренки N зубцов, у другой – K. Требуется найти, какое минимальное число поворотов на один зубчик требуется сделать, чтобы шестеренки вернулись в исходное состояние...

Помогите пожалуйста Даны две сцепленные шестеренки. У одной шестеренки N зубцов, у другой – K. Требуется найти, какое минимальное число поворотов на один зубчик требуется сделать, чтобы шестеренки вернулись в исходное состояние. Входные данные В единственной строке --- два натуральных числа N и K, не превосходящих 10 миллионов. Выходные данные Выведите искомое количество зубчиков. Гарантируется, что оно не более миллиарда.
Гость
Ответ(ы) на вопрос:
Гость
var  N,K,R: integer;  x,s: integer; begin  read(N,K);  R := N;  x := 2; s := 4;  while s <= K do   begin   while K mod x = 0 do     begin     if N mod x = 0 then       N := N div x     else       R := R * x;     K := K div x;     end;   s := s + 2*x + 1;   x := x + 1;   end;   if N mod K <> 0 then     R := R * K;   writeln(R) end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы