поясните пожалуйста как работает одна строчка программы на С++
программа возведения в степень числа на основе рекурсии.
программа не моя, из учебника.
#include
using namespace std;
typedef unsigned short USHORT;
typedef unsigned long ULONG;
ULONG GetPower(USHORT n, USHORT power);
int main()
{
USHORT number, power;
ULONG answer;
cout << "Enter a number:";
cin >> number;// число, например 2
cout << "Enter a power:";
cin >> power;// степень, например 4
answer = GetPower(number, power);
cout << number << "to the" << power << "the power is" << answer << endl;
return 0;
}
ULONG GetPower(USHORT n, USHORT power)
{
if (power==1)
return n;
else
return (n*GetPower(n, power-1));
}
поясните пожайлуста как работает строчка и как в результате получилось 16? //return (n*GetPower(n, power-1)); //
розпишите пожалуйста действия этой строчке с цыфрами и результатом если не трудно.
Вопрос исчерпан, благодарю Mikhail Levin.