English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Основной учебник Java

Java Управление потоком

Java Массивы

Java Ориентированность на объекты (I)

Java Ориентированность на объекты (II)

Java Ориентированность на объекты (III)

Обработка исключений в Java

Java Список (List)

Java Queue (очередь)

Java Map коллекции

Java Set коллекции

Java Ввод/Вывод (I/O)

Java Reader/Writer

Другие темы 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() для вычисления степеней.

Проще говоря, рекурсивная функция умножает основание на себя, чтобы получить количество的提升次数, то есть:

3 * 3 * 3 * 3 = 81
Шаги выполнения
Итерацияpower()powerRaisedрезультат
1power(3, 4)43 * результат2
2power(3, 3)33 * 3 * результат3
3power(3, 2)23 * 3 * 3 * результат4
4power(3, 1)13 * 3 * 3 * 3 * результатfinal
Константаpower(3, 0)03 * 3 * 3 * 3 * 1 = 81

Java полный список примеров