Program C za iskanje vsote naravnih števil s pomočjo rekurzije

V tem primeru se boste naučili poiskati vsoto naravnih števil s pomočjo rekurzivne funkcije.

Če želite razumeti ta primer, morate poznati naslednje teme programiranja C:

  • C Uporabniško določene funkcije
  • 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.

Na tej strani poiščite vsoto naravnih števil s pomočjo zanke.

Vsota naravnih števil z uporabo rekurzije

#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; ) 

Izhod

Vnesite pozitivno celo število: 20 Vsota = 210 

Recimo, da je uporabnik vnesel 20.

Sprva addNumbers()je bil poklican z main()z 20, ki je bil poslan kot argument.

Rezultatu je dodana številka 20 addNumbers(19).

V naslednjem klicu funkcije od addNumbers()do addNumbers()se posreduje 19, ki se doda rezultatu addNumbers(18). Ta postopek se nadaljuje, dokler n ni enako 0.

Ko je n enako 0, ni rekurzivnega klica. To vrne vsoto celih števil na koncu v main()funkcijo.

Zanimive Članki...