#include <iostream>
// Function to calculate power using recursion
double power_recursive(double base, int exponent);
// Function to calculate power using iteration
double power_iterative(double base, int exponent);
int main() {
// Test values
double base = 2.5;
int exponent = 3;
// Calculate power using recursion
double result_recursive = power_recursive(base, exponent);
std::cout << "Power using recursion: " << result_recursive << std::endl;
// Calculate power using iteration
double result_iterative = power_iterative(base, exponent);
std::cout << "Power using iteration: " << result_iterative << std::endl;
return 0;
}
double power_recursive(double base, int exponent) {
// Base case: exponent is 0
if (exponent == 0) {
return 1.0;
}
// Recursive case: calculate power using recursion
return base * power_recursive(base, exponent - 1);
}
double power_iterative(double base, int exponent) {
double result = 1.0;
// Iterate through exponent, multiplying base each time
for (int i = 0; i < exponent; ++i) {
result *= base;
}
return result;
}