square-root相关内容
在数学中,如果我希望计算3的2次方,则不需要符号,但我将2写为小数:3²。在Python中,此操作似乎由**语法表示。 >>> 3**2 9 如果我想反过来计算9的2次方,那么在数学中我需要使用一个符号:2√9 = 3 Python中是否有类似于**的速记符号来实现这一点,即29?或者我是否需要使用math模块? 推荐答案 x的第n个根是x^(1/n),
..
在计算x*x 不会上溢或下溢到 Inf、0 或非正规数? 假设 sqrt 返回最接近的可表示结果,x*x 也是如此(两者都是 IEEE 标准规定的,“平方根运算计算为如果以无限精度计算,然后四舍五入为两个最接近的指定精度的浮点数之一,这些浮点数围绕无限精确的结果"). 假设如果存在这样的双打,那么可能有接近1的例子,我写了一个程序来找到这些反例,它没有找到1.0和之间的任何反例1.00
..
我有一个 C 语言小程序,它使用递归函数(使用 while 循环实现)计算正整数 N 的平方根 x.如果我计算 x 使用这个: x = (1/2)*(x + N/x)//x0 = 1.0 然后 x 不断增长到 inf 然后是 nan.但是,如果我使用这个: x = (x + N/x)/2//x0 = 1.0 它工作正常,为什么?谢谢. 解决方案 1/2做整数除法,结果为0,将其中一
..
John Carmack 在 Quake III 源代码中有一个特殊的函数,它计算浮点数的平方根,比常规 (float)(1.0/sqrt(x)) 快 4 倍,包括奇怪的 0x5f3759df 常量.请参阅下面的代码.有人可以逐行解释这里到底发生了什么以及为什么它比常规实现快得多吗? float Q_rsqrt(浮点数){长我;浮动 x2, y;常量浮点三半 = 1.5F;x2 = 数量 * 0
..
John Carmack 在 Quake III 源代码中有一个特殊的函数,可以计算浮点数的平方根反比,比普通的 (float)(1.0/sqrt(x)) 快 4 倍,包括一个奇怪的 0x5f3759df 常量.请参阅下面的代码.有人可以逐行解释这里到底发生了什么,为什么它比常规实现更快? float Q_rsqrt( float number ){长我;浮动 x2, y;const float
..
我们可以仅使用 Java API 而不是定制的 100 行算法来计算 Java 中 BigDecimal 的平方根吗? 解决方案 我用过这个,效果很好.以下是该算法如何在高层次上工作的示例. 编辑:我很想知道下面定义的准确程度.这是来自官方来源的 sqrt(2): (前200位)1.41421356237309504880168872420969807856967187537694
..
我正在寻找一种快速、仅整数的算法来找到无符号整数的平方根(其整数部分).代码必须在 ARM Thumb 2 处理器上具有出色的性能.它可以是汇编语言或 C 代码. 欢迎提供任何提示. 解决方案 整数平方根 作者:Jack W. Crenshaw 可以作为另一个参考. C Snippets Archive 也有一个整数平方根实现.这不仅仅是整数结果,还计算了答案的额外小数(定点)
..
我想用代数来简化一个整数的平方根,而不是用数值计算,即 √800 应该是 20√2 ,而不是 28.2842712474619. 我找不到任何通过编程来解决这个问题的方法:( 解决方案 对根下的数进行因式分解,挑出成对出现的因数,剩下的留在根下. √800 = √(2 x 2 x 2 x 2 x 5 x 2 x 5) = √(22 x 22 x 52 x 2) =(2 x 2
..
我在 python shell 中试过这个 >>>从 sympy 导入 sqrt>>>sqrt((-9/10 + 6*sqrt(3)/5)**2 + (6/5 + 9*sqrt(3)/10)**2)sqrt((-0.9 + 6*sqrt(3)/5)**2 + (1.2 + 9*sqrt(3)/10)**2) 当在谷歌中输入时: 那么我如何让 numpy 给我一个更简化的结果(它不会总
..
我有这个代码: def root(x,n):如果 n==0:返回 x别的:返回 0.5**(x/root(x,n-1)+root(x,n-1)) 但是: >>>root(4,2)>>>2.05 为什么?它不适用于其他平方根... 解决方案 看起来您正在尝试实施 除法 计算平方根的算法(虽然我真的不知道);不过,我不确定您为什么要使用内置的幂运算符 (**),但您不应该这样做.
..
我试图得到一个非常大的数字的平方根,但我得到了错误:deltaSqrt = pow(delta,0.5)溢出错误:long int 太大而无法转换为浮点 在我的情况下,delta 等于: 5097524159124305711208346976972093994517918559319839193986818402316359809127198287961957143680580475
..
如果一个数 n 可以写成 axb 并且 m=sqrt(n).这里n=m*m.我们说我们只需要检查 m,因为 min(a,b) 解决方案 考虑 n = 143 = 11 * 13.143 的立方根在 5 到 6 之间.如果你只测试整除性到 6 的质数,你将找不到 n 的两个因数中的任何一个,并且会错误地得出 143 是质数.
..
是否有任何 Python 库提供实现以下链接中描述的“快速平方根倒数"算法的函数?http://en.wikipedia.org/wiki/Fast_inverse_square_root也许 numpy/SciPy? 解决方案 你已经可以做平方根了,只要做 x**-1/2 所以你不需要做一个这样做的功能很复杂,无论如何这样做可能会更快,而且更容易 就像 interjay 所说的那样
..
这是一个用户定义的程序,用于打印数字的平方根.它也应该适用于也不是完美平方的数字.每次将 i 递增 0.01 的步长,并检查 i * i 的值是否等于 n .如果相等,则打印 i 的值. #includevoid squareRoot(double);int main(){双数scanf(“%lf",& num);squareRoot(num);返回0;}void squa
..
我想在 Python 中计算大于 10^2000 的数字的平方根.如果我将此数字当作普通整数对待,我将始终得到以下结果: Traceback(最近一次通话最近):中的文件"...",第3行打印(q *(0.5))OverflowError:int太大,无法转换为float 我该如何解决?还是存在除使用Python之外的其他可能性来计算此平方根? 解决方案 通常的平
..
'unsigned long long'最多可解析15位数字. 是否可以找到 100位数字 的平方根? 解决方案 您还可以使用 Boost.Multiprecision 库.该库为一些流行的多精度实现提供了包装. #include#include#include#include
..
我正在使用BigInteger对象.在使用普通整数或long的情况下,我可以使用Math.pow(number,1/nth root)来获得第n个根.但是,这不适用于BigInteger.有办法吗? 我实际上不需要根源,只是想知道它是否是完美的力量.我正在用它来确定给定的BigInteger是否是完美的正方形/立方体/等. 解决方案 牛顿方法与整数完美兼容;在这里,我们假设 s k
..
我试图弄清楚如果正好是负数(由用户输入)时如何显示数字的平方根,如果是,请正确显示显示的“ i”。当我执行普通的 sqrt 函数时,结果总是类似于-1。#IND。当我尝试使用双复数变量时,正数或负数都将变得干净。 下面是我的代码;评论是我的目标。用户输入4个变量,可以是正整数或负整数。 //显示每个数字的平方根。请记住,用户可以输入负数,并且 //将需要找到带有“ i”的负数根。
..
我一直在寻找最快的方法来计算数字(整数)的平方根(整数).我在Wikipedia中遇到过这种解决方案,该解决方案可以找到一个数字的平方根(如果是一个完美的平方)或找到其最近的下一个完美正方形的平方根(如果给定的数字不是一个完美的平方: short isqrt(short num) { short res = 0; short bit = 1
..
我需要编写一个使用二进制搜索来递归计算输入的非负整数的平方根(四舍五入到最接近的整数)的程序. 这是我到目前为止所拥有的: import java.util.Scanner; public class Sqrt { public static void main(String[] args) { Scanner console = new Scanner(System
..