卡西欧的模数fx991es

时间:2014-11-29 14:26:46

标签: math calculator

我最近在stackoverflow上找到了一种使用fx991es计算模数的方法。它必须配置为使用辐射才能使其工作。

Pol(-Rec(1/(2π) , 2π×A/B), Y)(π - Y)B

How to calculate a Mod b in Casio fx-991ES calculator

但我真的不明白这是如何运作的。我看到它的一些数学黑客使用极坐标和东西。但为什么这实际上有用呢?

1 个答案:

答案 0 :(得分:5)

我不太了解这个计算器。但直观地说,使用角度应该是因为它们自然是模2π。 但首先,我们需要了解这些功能的作用。

  • Pol 采用2个参数作为点(X,Y)的笛卡尔坐标,并在这些变量中存储极坐标:X接收半径r,Y接收角度。
  • Rec 采用2个参数作为点的极坐标(r,角度),并在这些变量中存储笛卡尔坐标:r接收X,角度接收Y.

如果在表达式中使用,这两个函数都返回第一个参数,即Pol返回半径r,Rec返回X.它还表示Pol返回计算器中定义为默认角度单位的角度,并且它以[-π,+π[

范围表示

现在让我们根据计算器中优先级的顺序解析你的表达式

记录

Rec(1/(2π) , 2π×A/B)返回距中心1 /2π距离的点的X坐标,并以2πA/ B的角度返回,以2π为模,有效地取(A / B模1)* 2π。

你说Rec用第二个坐标覆盖Y--我相信你,因为我自己没有计算器,似乎找不到模拟器。

因此表达式为Pol(-X, Y)(π - Y)B

波尔

我们现在有Pol(-X,Y)。在极坐标中,翻转X的符号对半径没有影响,但它会将角度从值A更改为π-A。

所以我们现在在Y变量中得到修改后的角度,因此π-2πA/ B在[-π,+π[模2π中减小。 Pol返回半径,即1 /(2π)。

现在公式为1/(2π)(π-Y)B

捆绑松散的目标

π-Y现在给出了我们在[0,2π[中移动的角度,并将其除以2π仅产生A/B modulo 1。乘以B得出A模B。

TL; DR

进入/来自极坐标给出了一个自由的模2π计算,应用于A / B得到它的小数部分,π-Y技巧做了两次(一个写得那样,另一个写做-X)是因为角度不是在[0,2π[范围内直接给出,而是[-π,+π[