У овом примеру ћете научити да проналазите збир природних бројева помоћу рекурзивне функције.
Да бисте разумели овај пример, требало би да имате знање о следећим темама програмирања на Ц:
- Ц Кориснички дефинисане функције
- Ц Рекурзија
Позитивни бројеви 1, 2, 3 … познати су као природни бројеви. Програм у наставку узима позитиван цео број од корисника и израчунава зброј до датог броја.
Посетите ову страницу да бисте пронашли збир природних бројева помоћу петље.
Збир природних бројева помоћу рекурзије
#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; )
Оутпут
Унесите позитиван цео број: 20 Збир = 210
Претпоставимо да је корисник унео 20.
У почетку addNumbers()
се зове са main()
са 20 као аргумент.
Број 20 се додаје резултату addNumbers(19)
.
У следећем позиву функције од addNumbers()
до addNumbers()
, прослеђује се 19 који се додаје резултату addNumbers(18)
. Овај процес се наставља све док н није једнако 0.
Када је н једнако 0, нема рекурзивног позива. Ово враћа зброј целих бројева на крају у main()
функцију.