计算没有任意精度和只有基本算术的圆周率
Calculating pi without arbitrary precision and only basic arithmetic
我想计算圆周率。但是,我有很多限制。变量最多只能保留5位小数,而我只有以下运算符:
Addition
Subtraction
Multiplication
Division
Exponents
Square roots
Sin
Cos
Basic Loops, Conditionals, and relational operators.
BBP算法在这里似乎没有用,因为即使它不需要任意精度,我也无法在碱基之间进行转换。我不知道有任何其他公式可以在基数 10 中找到 pi 的第 n 个数字。
甚至可以使用这些约束来计算圆周率吗?
BBP 可以修改为以 10 为基数给出 π。There's a Java implementation on Github。 (我相信算法描述的屏幕截图来自 Pi - Unleashed by Arndt/Haenel。)
您将需要模运算和计算最接近数字对数的整数的方法,但您可以使用现有的运算和循环来执行它们。
我想计算圆周率。但是,我有很多限制。变量最多只能保留5位小数,而我只有以下运算符:
Addition
Subtraction
Multiplication
Division
Exponents
Square roots
Sin
Cos
Basic Loops, Conditionals, and relational operators.
BBP算法在这里似乎没有用,因为即使它不需要任意精度,我也无法在碱基之间进行转换。我不知道有任何其他公式可以在基数 10 中找到 pi 的第 n 个数字。 甚至可以使用这些约束来计算圆周率吗?
BBP 可以修改为以 10 为基数给出 π。There's a Java implementation on Github。 (我相信算法描述的屏幕截图来自 Pi - Unleashed by Arndt/Haenel。)
您将需要模运算和计算最接近数字对数的整数的方法,但您可以使用现有的运算和循环来执行它们。