gpt4 book ai didi

c++ - 负基例的类 Pow 函数

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:32:36 25 4
gpt4 key购买 nike

std::pow 适用于大多数基数和指数值的组合。

然而,当基数为负数和小数时,std::pow 就会折叠。

在下面的示例中返回 NaN(根据定义), 当预期值大致为:-1.2332863005546

#include <cmath>
#include <cstdio>

int main()
{
double a = -1.1;
double b = 2.2;
double c = std::pow(a,b);
printf("%5.2f ^ %5.2f = %25.10f\n",a,b,c);
return 0;
}

我的问题是:关于如何开发在基数为负时返回非 NaN 值的通用 pow 函数有什么想法吗?

更新 - 总会有一类结果只能用复数表示。

最佳答案

这不是预期值。期望值为复数 0.998 + 0.725i .如果定义 ab作为std::complex<double>它会起作用。

关于c++ - 负基例的类 Pow 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17670989/

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