Program C k nalezení součtu přirozených čísel pomocí rekurze

V tomto příkladu se naučíte najít součet přirozených čísel pomocí rekurzivní funkce.

Abychom pochopili tento příklad, měli byste mít znalosti o následujících programovacích tématech jazyka C:

  • C Uživatelem definované funkce
  • C Rekurze

Kladná čísla 1, 2, 3… jsou známá jako přirozená čísla. Níže uvedený program vezme od uživatele kladné celé číslo a vypočítá součet až do daného čísla.

Na této stránce naleznete součet přirozených čísel pomocí smyčky.

Součet přirozených čísel pomocí rekurze

#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ýstup

Zadejte kladné celé číslo: 20 Součet = 210 

Předpokládejme, že uživatel zadal 20.

Zpočátku addNumbers()je volán od main()s 20 předán jako argument.

Číslo 20 se přičte k výsledku addNumbers(19).

V dalším volání funkce od addNumbers()do addNumbers()je předáno 19, které je přidáno k výsledku addNumbers(18). Tento proces pokračuje, dokud n není rovno 0.

Když n je rovno 0, není rekurzivní volání. Tím se nakonec vrátí součet celých čísel do main()funkce.

Zajímavé články...