вообще-то ответ 8, а не 16...........2 в степени 3 ведь 8, так оно и получается
Сначала функция вызывается с параметрами (2,3)
далее проверка степень(3) равно 1........нет...........тогда возвращется число(2) * на ту же функцию, но с параметрами(2,2), 3 -1 ведь 2?
на этой второй итерации опять проверка 2 не равно 1, тогда возврат 2 * функция (2,1),
на третей итерации проверка , на этот раз 1 = 1, тогда возврат просто числа 2, которое во второй итерации умножено на 2, что дает 4 и в первой итерации тоже умножается на 2 и в результате 8