În acest exemplu, veți învăța să găsiți suma numerelor naturale folosind o funcție recursivă.
Pentru a înțelege acest exemplu, ar trebui să aveți cunoștințele următoarelor subiecte de programare C:
- C Funcții definite de utilizator
- C Recursivitate
Numerele pozitive 1, 2, 3 … sunt cunoscute ca numere naturale. Programul de mai jos ia un întreg pozitiv de la utilizator și calculează suma până la numărul dat.
Vizitați această pagină pentru a găsi suma numerelor naturale folosind o buclă.
Suma numerelor naturale folosind recursivitatea
#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; )
Ieșire
Introduceți un număr întreg pozitiv: 20 Suma = 210
Să presupunem că utilizatorul a introdus 20.
Inițial, addNumbers()
este apelat din main()
cu 20 trecut ca argument.
Numărul 20 se adaugă la rezultatul addNumbers(19)
.
În următoarea funcție apel de la addNumbers()
la addNumbers()
, este trecut 19 care se adaugă la rezultatul addNumbers(18)
. Acest proces continuă până când n este egal cu 0.
Când n este egal cu 0, nu există apel recursiv. Aceasta returnează suma întregilor în cele din urmă la main()
funcție.