C Програма для знаходження суми натуральних чисел за допомогою рекурсії

У цьому прикладі ви навчитеся знаходити суму натуральних чисел за допомогою рекурсивної функції.

Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування на С:

  • C Функції, визначені користувачем
  • C Рекурсія

Позитивні числа 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). Цей процес триває, поки n не дорівнює 0.

Коли n дорівнює 0, рекурсивного виклику немає. Це повертає суму цілих чисел у кінцевому рахунку до main()функції.

Цікаві статті...