В тази програма ще се научите да намирате сумата на естественото число, използвайки рекурсия в Java. Това се прави с помощта на рекурсивна функция.
За да разберете този пример, трябва да имате познанията по следните теми за програмиране на Java:
- Java методи
- Java рекурсия
Положителните числа 1, 2, 3 … са известни като естествени числа. Програмата по-долу взема положително цяло число от потребителя и изчислява сумата до даденото число.
Можете да намерите и сумата от естествени числа, използвайки цикъл. Тук обаче ще се научите да решавате този проблем, като използвате рекурсия.
Пример: Сума от естествени числа, използващи рекурсия
public class AddNumbers ( public static void main(String() args) ( int number = 20; int sum = addNumbers(number); System.out.println("Sum = " + sum); ) public static int addNumbers(int num) ( if (num != 0) return num + addNumbers(num - 1); else return num; ) )
Изход
Сума = 210
Числото, чиято сума трябва да бъде намерена, се съхранява в променливо число.
Първоначално функцията addNumbers()
се извиква от main()
функцията с 20, подадена като аргумент.
Числото (20) се добавя към резултата от addNumbers(19)
.
При следващото извикване на функция от addNumbers()
до addNumbers()
се предава 19, което се добавя към резултата от addNumbers(18)
. Този процес продължава, докато num е равен на 0.
Когато num е равно на 0, няма рекурсивно повикване и това връща сумата от цели числа към main()
функцията.