# 10 REKURENCJA
Rekurencja zwana rekursją, polega na wywołaniu przez funkcję samej siebie. Algorytmy rekurencyjne zastępują w pewnym sensie iteracje. Niekiedy problemy rozwiązywane tą techniką będą nieznacznie wolniejsze (wiąże się to z wywoływaniem funkcji), natomiast rozwiązanie niektórych problemów jest dużo prostsze w implementacji.
```cpp=
#include <iostream>
using namespace std;
long long suma(int n)
{
if(n<1)
return 0;
return n+suma(n-1);
}
int main()
{
int n;
cout<<"Podaj liczbę: ";
cin>>n;
cout<<"Suma "<<n<<" kolejnych liczb naturalnych wynosi "
<<suma(n)<<endl;
return 0;
}
```
Załóżmy, że na wejściu podaliśmy liczbę 5 (program ma wyznaczyć sumę 1+ 2+ 3 + 4 + 5).
PRZECZYTAJ TEŻ INFORMACJE NA STRONIE https://cpp0x.pl/kursy/Kurs-C++/Poziom-5/Rekurencja/585