V tomto programu se naučíte najít součet přirozeného čísla pomocí rekurze v Javě. To se provádí pomocí rekurzivní funkce.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Metody Java
- Java rekurze
Kladná čísla 1, 2, 3… jsou známá jako přirozená čísla. Níže uvedený program vezme od uživatele kladné celé číslo a vypočítá součet až do daného čísla.
Součet přirozených čísel najdete také pomocí smyčky. Zde se však naučíte řešit tento problém pomocí rekurze.
Příklad: Součet přirozených čísel pomocí rekurze
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; ) )
Výstup
Součet = 210
Číslo, jehož součet se nachází, je uloženo v proměnném čísle.
Zpočátku addNumbers()
se volá z main()
funkce s 20 předanými jako argument.
K výsledku se přidá číslo (20) addNumbers(19)
.
V dalším volání funkce od addNumbers()
do addNumbers()
je předáno 19, které je přidáno k výsledku addNumbers(18)
. Tento proces pokračuje, dokud se num nebude rovnat 0.
Když je num rovno 0, není rekurzivní volání a funkce vrátí součet celých čísel main()
.