Программа на C для поиска GCD с использованием рекурсии

В этом примере вы научитесь находить НОД (наибольший общий делитель) двух положительных целых чисел, введенных пользователем с помощью рекурсии.

Чтобы понять этот пример, вы должны знать следующие темы программирования на C:

  • Функции C
  • C Пользовательские функции
  • C Рекурсия

Эта программа принимает два положительных целых числа в качестве входных данных от пользователя и вычисляет GCD с использованием рекурсии.

Посетите эту страницу, чтобы узнать, как можно рассчитать НОД с помощью циклов.

НОД двух чисел с использованием рекурсии

#include int hcf(int n1, int n2); int main() ( int n1, n2; printf("Enter two positive integers: "); scanf("%d %d", &n1, &n2); printf("G.C.D of %d and %d is %d.", n1, n2, hcf(n1, n2)); return 0; ) int hcf(int n1, int n2) ( if (n2 != 0) return hcf(n2, n1 % n2); else return n1; ) 

Вывод

Введите два положительных целых числа: 366 60 НОД 366 и 60 равно 6. 

В этой программе рекурсивные вызовы выполняются до тех пор, пока значение n2 не станет равным 0.

Интересные статьи...