c++ - 如何在C++中计算数字的第3个根

标签 c++ math

我正在尝试计算数字的第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/

    相关文章:

    algorithm - 给定非轴对齐矩形,如何在二维矩阵中找到样本子集?

    Java 的根源和力量

    c++ - 为什么当客户端忙于接收数据时 select() 有时会超时

    python - 将 python 脚本输出重定向到 grep

    math - 设置和解决递归函数的递归关系?

    java - 如何定义和初始化一个生成 2 到 20(含)随机整数的变量?

    c++ - 做什么 ({});在 C++ 中是什么意思?

    c++ - 如何从文本文件 C++ 制作对象?

    c++ - 使用双包装类进行位操作(C++,clang)修复性能下降

    algorithm - 如何使用生成 [0.0, 1.0) 之间的 float 的随机生成器生成 [1, n] 之间的随机数