Даны две сцепленные шестеренки. у одной шестеренки n зубцов, у другой – k. требуется найти, какое минимальное число поворотов на один зубчик требуется сделать, чтобы шестеренки вернулись в исходное состояние. входные данные в единственной строке два натуральных числа n и k, не превосходящих 10 миллионов. выходные данные выведите искомое количество зубчиков. гарантируется, что оно не более миллиарда на языке с и с++

SMokKK SMokKK    2   28.09.2019 12:00    21

Ответы
kravcovleonid5 kravcovleonid5  04.08.2020 22:16

Важное замечание: Для типа long long int требуется от компилятора поддержка стандарта C99.

Приложил файл расширения .cpp, чтобы обойти ограничение сайта. При работе с кодом измените на .c

#include <stdio.h>


long long int NOD(long long int var1, long long int var2) //Алгоритм Евклида

{

   while(var1 != var2)

   {

       if(var1 > var2)

           var1 = var1 - var2;

       else var2 = var2 - var1;

   }

   return var1;

}

long long int NOK(long long int var1, long long int var2)

{

   return (var1 * var2) / NOD(var1, var2);

}

int main()

{

   long long int N, K;

   scanf("%lli%lli", &N, &K);


   printf("Количество оборотов: %lli\n", NOK(N, K));


}


Даны две сцепленные шестеренки. у одной шестеренки n зубцов, у другой – k. требуется найти, какое ми
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика