Program C na nájdenie súčtu prirodzených čísel pomocou rekurzie

V tomto príklade sa naučíte nájsť súčet prirodzených čísel pomocou rekurzívnej funkcie.

Aby ste pochopili tento príklad, mali by ste mať znalosti nasledujúcich tém programovania v jazyku C:

  • C Užívateľom definované funkcie
  • C Rekurzia

Kladné čísla 1, 2, 3… sú známe ako prirodzené čísla. Program uvedený nižšie vezme od používateľa kladné celé číslo a vypočíta súčet až po dané číslo.

Navštívte túto stránku a nájdite súčet prirodzených čísel pomocou slučky.

Súčet prirodzených čísel pomocou rekurzie

#include int addNumbers(int n); int main() ( int num; printf("Enter a positive integer: "); scanf("%d", &num); printf("Sum = %d", addNumbers(num)); return 0; ) int addNumbers(int n) ( if (n != 0) return n + addNumbers(n - 1); else return n; ) 

Výkon

Zadajte kladné celé číslo: 20 Súčet = 210 

Predpokladajme, že používateľ zadal 20.

Spočiatku addNumbers()je volaný z main()čísla 20 a prešiel ako argument.

Číslo 20 sa pripočíta k výsledku addNumbers(19).

V nasledujúcom volaní funkcie od addNumbers()do addNumbers()je odovzdané 19, ktoré sa pripočítajú k výsledku addNumbers(18). Tento proces pokračuje, kým n sa nerovná 0.

Keď je n rovné 0, neexistuje rekurzívne volanie. Toto vráti súčet celých čísel nakoniec do main()funkcie.

Zaujímavé články...