Primer iskanja vsote naravnih števil s pomočjo rekurzivne funkcije.
Če želite razumeti ta primer, morate poznati naslednje programske teme C ++:
- Funkcije C ++
- Vrste uporabniško določenih funkcij v C ++
- C ++ if, if … else in ugnezdeni if … else
- C ++ Rekurzija
Pozitivna števila 1, 2, 3 … so znana kot naravna števila. Spodnji program od uporabnika vzame pozitivno celo število in izračuna vsoto do dane številke.
Vsoto naravnih števil lahko najdete tudi z zankami. Vendar se boste tega problema naučili reševati z uporabo rekurzije tukaj
Primer: Izračunajte vsoto naravnih števil z uporabo rekurzije
#include using namespace std; int add(int n); int main() ( int n; cout <> n; cout << "Sum = " << add(n); return 0; ) int add(int n) ( if(n != 0) return n + add(n - 1); return 0; )
Izhod
Vnesite pozitivno celo število: 10 Vsota = 55
V tem programu se številka, ki jo vnese uporabnik, posreduje add()
funkciji.
Recimo, da uporabnik vnese 10. Zdaj se add()
funkciji posreduje 10 . Ta funkcija doda 10 rezultatu seštevanja 9 (10 - 1 = 9).
Naslednjič se rezultatu seštevanja 8 doda 9 (9 - 1 = 8). To traja, dokler število ne doseže 0, ko funkcija vrne 0.
Zdaj se vrne vsaka funkcija za izračun končnega rezultata: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55.