Аватар
Информатика, опубликовано 2018-08-22 21:26:04 by Гость

Помогите пожалуйста Даны две сцепленные шестеренки. У одной шестеренки 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   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.

Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.