У цій програмі ви навчитеся знаходити GCD (Найбільший загальний дільник) або HCF за допомогою рекурсивної функції в Java.
Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування Java:
- Методи Java
- Рекурсія Java
Ця програма приймає два натуральних числа і обчислює GCD за допомогою рекурсії.
Відвідайте цю сторінку, щоб дізнатися, як можна обчислити GCD за допомогою циклів.
Приклад: GCD двох чисел з використанням рекурсії
public class GCD ( public static void main(String() args) ( int n1 = 366, n2 = 60; int hcf = hcf(n1, n2); System.out.printf("G.C.D of %d and %d is %d.", n1, n2, hcf); ) public static int hcf(int n1, int n2) ( if (n2 != 0) return hcf(n2, n1 % n2); else return n1; ) )
Вихідні дані
GCD 366 і 60 - це 6.
У наведеній вище програмі рекурсивна функція викликається до тих пір, поки n2 не дорівнює 0. Зрештою, значення n1 - це GCD або HCF даних двох чисел.
Етапи виконанняНі. | Рекурсивний дзвінок | n1 | n2 | n1% n2 |
---|---|---|---|---|
1 | hcf (366, 60) | 366 | 60 | 6 |
2 | hcf (60, 6) | 60 | 6 | 0 |
Остаточний | hcf (6, 0) | 6 | 0 | - |