Šajā piemērā jūs iemācīsities atrast GCD (lielākais kopējais dalītājs) no diviem pozitīviem veseliem skaitļiem, kurus lietotājs ievadījis, izmantojot rekursiju.
Lai saprastu šo piemēru, jums vajadzētu būt zināšanām par šādām C programmēšanas tēmām:
- C funkcijas
- C Lietotāja definētas funkcijas
- C Rekursija
Šī programma ņem divus pozitīvus skaitļus kā lietotāja ievadi un aprēķina GCD, izmantojot rekursiju.
Apmeklējiet šo lapu, lai uzzinātu, kā jūs varat aprēķināt GCD, izmantojot cilpas.
Divu skaitļu GCD, izmantojot rekursiju
#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; )
Rezultāts
Ievadiet divus pozitīvos skaitļus: 366 60 GCD no 366 un 60 ir 6.
Šajā programmā rekursīvie zvani tiek veikti, līdz n2 vērtība ir vienāda ar 0.