W tym przykładzie nauczysz się pisać program JavaScript, który odnajduje sumę liczb naturalnych za pomocą rekursji.
Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania JavaScript:
- Funkcje i wyrażenia funkcyjne JavaScript
- Rekursja JavaScript
Dodatnie liczby całkowite 1, 2, 3,… są znane jako liczby naturalne.
Przykład: suma liczb naturalnych przy użyciu rekursji
// program to find the sum of natural numbers using recursion function sum(num) ( if(num> 0) ( return num + sum(num - 1); ) else ( return num; ) ) // take input from the user const number = parseInt(prompt('Enter a positive integer: ')); const result = sum(number); // display the result console.log(`The sum is $(result)`);
Wynik
Wpisz dodatnią liczbę całkowitą: 5 Suma wynosi 15
W powyższym programie użytkownik jest proszony o wprowadzenie liczby.
Następnie sum()
funkcja jest wywoływana przez przekazanie parametru (tutaj 5 ), który wprowadził użytkownik.
- Jeśli liczba jest większa niż 0 , funkcja wywołuje samą siebie, zmniejszając liczbę o 1 .
- Ten proces trwa, aż liczba będzie równa 1 . Gdy liczba osiągnie 0 , program zatrzymuje się.
- Jeśli użytkownik wprowadzi liczbę ujemną, zwracana jest liczba ujemna i program zatrzymuje się.
Tutaj,
sum (5) zwraca 5 + sum (4) sum (4) zwraca 5 + 4 + sum (3) sum (3) zwraca 5 + 4 + 3 + sum (2) sum (2) zwraca 5 + 4 + 3 + 2 + sum (1) sum (1) zwraca 5 + 4 + 3 + 2 + 1 + sum (0) sum (0) zwraca 5 + 4 + 3 + 2 + 1 + 0