🟡 Վարժություն 11

Գրել աստիճան բարձրացնելու համար նախատեսված ռեկուրսիվ ֆունկցիա։ power ֆունկցիան ստանում է երկու արգումենտ` թիվը և համապատասխան աստիճանը (դրական, ամբողջ թիվ)։
Օրինակներ ՝
power(3, 2) == 9
power(2, 4) == 16
 
#include <iostream>
double power(double number, int pow) {
  // Your code here
}

int main() {
  double inputNum;
  int inputPow;
  std::cout << "Input number and power: ";
  std::cin >> inputNum >> inputPow;
  if (inputPow < 0) {
    std::cout << "Invalid Input";
    return 0;
  }
  double result = power(inputNum, inputPow);
  std::cout << "power(" << inputNum << ", " << inputPow << ") ==  " << result;
  std::cout << std::endl;
}
 

Հուշում 1

Նկատենք, որ pow(number, 0) == 1, կամայական number-ի համար։ Դա հանդիսանում է ռեկուրսայի բազան։

double power(double number, int pow) {
   if (pow == 0) {
      return 1; 
   }
}

🚩 Հուշում 2

Նկատենք, որ power(2, 4) == 2 * power(2, 3)
Ընդհանուր դեպքում` power(n, pow) == n * power(n, pow -1)
 

Constraints

Time limit: 0.2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue