#include <iostream>
#include <cmath>
int power(int base, int exponent) {
int result = 1;
for (int i = 0; i < exponent; i++) {
result *= base;
}
return result;
}
int main() {
int num;
std::cout << "لطفا یک عدد صحیح بزرگتر از یک وارد کنید: ";
std::cin >> num;
for (int base = 2; base <= sqrt(num); base++) {
for (int power = 2; power <= log(num) / log(base); power++) {
if (power(base, power) == num) {
std::cout << num << " = " << base << " ^ " << power << std::endl;
return 0;
}
}
}
std::cout << num << " cannot be a powered number" << std::endl;
return 0;
}
این برنامه یک تابع جدید به نام power دارد که توان یک عدد را محاسبه می کند. این تابع یک حلقه for استفاده می کند تا عدد پایه را به تعداد توان بار ضرب کند. سپس این تابع در برنامه اصلی به جای تابع pow استفاده می شود.