📜  c++ 幂运算符 - C++ (1)

📅  最后修改于: 2023-12-03 15:29:52.671000             🧑  作者: Mango

C++ 幂运算符

C++ 的幂运算符是 ^,使用方式与其他算术运算符类似。不过需要注意的是,这不是 C++ 标准定义的运算符。

在 C++ 中,我们可以使用 pow() 函数来计算幂。这个函数需要引用 cmath 头文件。

示例代码:

#include <cmath>
#include <iostream>

int main(){
    double base = 2.0, exponent = 3.0;
    double result = pow(base, exponent);
    std::cout << "2 ^ 3 = " << result << std::endl;
    return 0;
}

输出结果:

2 ^ 3 = 8

我们可以通过自定义函数来实现幂运算符。如下代码所示:

#include <iostream>

double power(double base, int exponent) {
    double result = 1.0;
    for(int i = 1; i <= exponent; ++i) {
        result *= base;
    }
    return result;
}

int main() {
    double base = 2.0;
    int exponent = 3;
    double result = power(base, exponent);
    std::cout << "2 ^ 3 = " << result << std::endl;
    return 0;
}

输出结果与之前相同。

2 ^ 3 = 8

需要注意的是,幂运算有一个性质,就是满足交换律。也就是说,a ^ b 等于 b ^ a。可以在实现幂函数时对指数进行判断,选择一种更小的计算方式,从而提高效率。

示例代码:

#include <iostream>

double power(double base, int exponent) {
    if(exponent == 0) {
        return 1.0;
    } else if(exponent % 2 == 0) {
        double temp = power(base, exponent/2);
        return temp * temp;
    } else {
        double temp = power(base, exponent-1);
        return base * temp;
    }
}

int main() {
    double base = 2.0;
    int exponent = 3;
    double result = power(base, exponent);
    std::cout << "2 ^ 3 = " << result << std::endl;
    return 0;
}

输出结果与之前相同。

2 ^ 3 = 8