В этой программе вы научитесь вычислять степень числа с помощью рекурсивной функции в Java.
Чтобы понять этот пример, вы должны знать следующие темы программирования Java:
- Методы Java
- Рекурсия Java
Пример: программа для расчета мощности с использованием рекурсии
public class Power ( public static void main(String() args) ( int base = 3, powerRaised = 4; int result = power(base, powerRaised); System.out.printf("%d^%d = %d", base, powerRaised, result); ) public static int power(int base, int powerRaised) ( if (powerRaised != 0) return (base * power(base, powerRaised - 1)); else return 1; ) )
Вывод
3 4 = 81
В приведенной выше программе вы вычисляете мощность с помощью рекурсивной функции power ().
Проще говоря, рекурсивная функция умножает базу на себя для powerRaised times, что составляет:
3 * 3 * 3 * 3 = 81Шаги выполнения
Итерация | мощность() | powerRaised | результат |
---|---|---|---|
1 | мощность (3, 4) | 4 | 3 * результат 2 |
2 | мощность (3, 3) | 3 | 3 * 3 * результат 3 |
3 | мощность (3, 2) | 2 | 3 * 3 * 3 * результат 4 |
4 | мощность (3, 1) | 1 | 3 * 3 * 3 * 3 * результат окончательный |
Финал | мощность (3, 0) | 0 | 3 * 3 * 3 * 3 * 1 = 81 |