gpt4 book ai didi

c++ - 如何在 C++ 中获得立方根?

转载 作者:IT老高 更新时间:2023-10-28 12:46:41 27 4
gpt4 key购买 nike

我知道如何使用 sqrt 函数获得数字的平方根

如何获得一个数的立方根

最佳答案

sqrt 代表“平方根”,“平方根”表示提升到 1/2 的幂。没有“根为 2 的平方根”或“根为 3 的平方根”之类的东西。对于 other roots ,你改变了第一个词; 在您的情况下,您正在寻找如何执行 立方体生根

在 C++11 之前,对此没有具体的功能,但你可以回到最初的原则:

  • 平方根:std::pow(n, 1/2.)(或std::sqrt(n))
  • 立方体根:std::pow(n, 1/3.)(或 std::cbrt(n) 自 C++11 起)
  • 第四根:std::pow(n, 1/4.)
  • 等等。

如果您希望为 n 传递负值,请避免使用 std::pow 解决方案 — it doesn't support negative inputs with fractional exponents ,这就是添加 std::cbrt 的原因:

std::cout << std::pow(-8, 1/3.) << '\n';  // Output: -nan
std::cout << std::cbrt(-8) << '\n'; // Output: -2

注意. 非常重要,因为否则 1/3 使用整数除法并导致 0.

关于c++ - 如何在 C++ 中获得立方根?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18103769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com