Tạo một hàm Tìm lũy thừa lấy số x và n, trong đó x là 2 và n là bao nhiêu lần, ta phải làm lũy thừa. Nếu là số chẵn thì ta phải thực hiện x * x và nếu là số lẻ thì nhân kết quả với x * x. Tiếp tục cuộc gọi đệ quy cho đến khi n trở thành 0.
Giả sử nếu chúng ta có một số 2 và 8, thì 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 =256.
Ví dụ
using System;
namespace ConsoleApplication{
public class BackTracking{
public int FindPower(int x, int n){
int result;
if (n == 0){
return 1;
}
result = FindPower(x, n / 2);
if (n % 2 == 0){
return result * result;
}
else{
return x * result * result;
}
}
}
class Program{
static void Main(string[] args){
BackTracking b = new BackTracking();
int res = b.FindPower(2, 8);
Console.WriteLine(res);
}
}
} Đầu ra
256