126得票5回答
为什么Python计算平方根时会给出“错误”的答案?Python 2中的整数除法是什么?

x = 16 sqrt = x**(.5) #returns 4 sqrt = x**(1/2) #returns 1 我知道可以import math并使用sqrt,但我正在寻找上述问题的答案。Python 2中的整数除法是什么?这种行为在Python 3中已经修复。

113得票3回答
在Rust中编写Quake的快速InvSqrt()函数是否可行?

这只是为了满足我的好奇心。 这个有没有实现:float InvSqrt (float x) { float xhalf = 0.5f*x; int i = *(int*)&x; i = 0x5f3759df - (i>>1); x = *(floa...

78得票14回答
Python中的整数平方根

在Python或标准库中是否有整数平方根函数?我需要它能够精确返回整数,并且如果输入不是完全平方数时引发一个异常。 我试过使用这段代码:def isqrt(n): i = int(math.sqrt(n) + 0.5) if i**2 == n: return ...

49得票9回答
在Python中如何计算平方根?

我需要计算一些数字的平方根,例如√9 = 3和√2 = 1.4142。我该如何在Python中实现? 输入可能是所有正整数,并且相对较小(比如小于十亿),但以防万一,有什么可能会出错的地方吗? 注意:这是在关于现有问题的讨论之后,在规范问题上的一次尝试。 相关问题: - 在Pyth...

45得票5回答
尽可能快地比较形如(a + sqrt(b))的两个值?

作为我正在编写的程序的一部分,我需要比较形式为a + sqrt(b)的两个值,其中a和b是无符号整数。因为这是紧密循环的一部分,所以我希望这个比较尽可能快地运行。(如果有影响的话,我在x86-64机器上运行代码,并且无符号整数不大于10^6。另外,我知道a1<a2的事实。) 这是我试图...

34得票3回答
在Haskell中从整数获取平方根

我怎样从Int中获取sqrt。 我尝试过以下代码:sqrt . fromInteger x 但是由于类型不兼容出现了错误。

34得票6回答
有没有可能开发出一个速度显著更快的sqrt函数?

在我分析的一个应用程序中,我发现在某些情况下,该函数能够占据总执行时间的10%以上。 多年来,我看到了有关使用狡猾的浮点技巧实现更快的sqrt函数的讨论,但我不知道这些东西在现代CPU上是否已经过时。 参考使用了MSVC++ 2008编译器...虽然我认为sqrt不会增加太多开销。 请参...

34得票6回答
最快的整数平方根算法(指仅需最少的指令数量)

我需要一个快速的整数平方根算法,不涉及任何显式除法。目标RISC体系结构可以在一个周期内执行诸如add、mul、sub、shift等操作(好吧——操作的结果实际上是在第三个周期写入的,但有交错),因此,任何使用这些操作并且速度快的整数算法将受到极大的赞赏。这就是我现在所拥有的,我认为二分查找应...

27得票3回答
Python的数学函数在哪里可以查看?

我想研究一下Python如何计算平方根,所以我试图找到math.sqrt()的定义,但是我无法在任何地方找到它。我已经查看了_math.c、mathmodule.c和其他地方。 我知道Python使用C语言的数学函数,但它们是否在Python发行版中,还是链接到其他代码中呢?我正在使用Mac...

26得票2回答
"sqrt"不是"std"的成员。

我在Linux上编译我的程序 - 它有以下代码行:std::sqrt((double)num); 在Windows上没问题,但是在Linux上出错了: sqrt 不是 std 的成员 我已经包含了 math.h,这是什么问题呢?