Програма C ++ за намиране на сума от естествени числа с помощта на рекурсия

Пример за намиране на сумата от естествени числа с помощта на рекурсивна функция.

За да разберете този пример, трябва да имате познанията по следните теми за програмиране на C ++:

  • C ++ функции
  • Видове дефинирани от потребителя функции в C ++
  • C ++ ако, ако … друго и вложено ако … друго
  • C ++ рекурсия

Положителните числа 1, 2, 3 … са известни като естествени числа. Програмата по-долу взема положително цяло число от потребителя и изчислява сумата до даденото число.

Можете да намерите и сумата на естествените числа, като използвате цикли. Тук обаче ще се научите да решавате този проблем, като използвате рекурсия

Пример: Изчислете сумата на естествените числа, като използвате рекурсия

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

Изход

 Въведете положително цяло число: 10 Сума = 55 

В тази програма номерът, въведен от потребителя, се предава на add()функцията.

Да предположим, че 10 е въведен от потребителя. Сега 10 се предава на add()функцията. Тази функция добавя 10 към резултата от добавянето на 9 (10 - 1 = 9).

Следващият път 9 се добавя към резултата от добавянето на 8 (9 - 1 = 8). Това продължава, докато числото достигне 0, когато функцията връща 0.

Сега всяка функция се връща за изчисляване на крайния резултат: 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55.

Интересни статии...