我正在尝试计算数字的第3个根。

例如,如果
n = 8-> 2;
如果n = 27-> 3;


pow函数在平方根(x ^ 0.5)上很好用,但在第3根(x ^ 1/3)上不起作用,为什么呢?

#include <iostream>
#include <math.h>

using namespace std;

int main() {
    int e = 0.3;
    double k;
    cout << "Enter k:" << endl;
    cin >> k;
    k = pow(k, e);
    cout << "The result of k^1/3 " << k << endl;
    return 0;
}

最佳答案

两个问题:

  • 您将e声明为int,但是尝试在其中存储double值,因此它会被截断。您需要将e声明为double才能正确存储该值。
  • 您用于e的值不正确。 0.31.0/3.0不同,因此您的结果将关闭。请使用1.0/3.0代替此值。
  • 关于c++ - 如何在C++中计算数字的第3个根,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35758571/

    10-08 21:31