平衡九进制

前端之家收集整理的这篇文章主要介绍了平衡九进制前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

想来想去还是把名字改成平衡九进制好,

平衡三进制的名字已经在网上了,

也省的我再乱命名,
github上放了一份 ..https://github.com/jiyinyiyong/shuangsan0

之前的内容只能到我的网易博客看了,

怕转过来链接csdn把把我的博客封掉,

进入正题,

平衡九进制数的图形展示是一个九宫格,

分别填入数字:

6 1 8

7 5 3

2 9 4

然后每一个格子可以扩展细分成新的九宫格,

最大的一层可以往外延伸,

这些直接从自然数推就可以了,

也可以参照wiki上面的平衡三进制,

总的说两者就是高维低维的对应,

再往上就平衡八十一进制了,偶数嘛,

实际的用处不多,

虽然用来指明方向非常直观,

但是现在没人用,我一个人说也不算,

符号计算法则跟自然数相似,

也就是后面的重点,

另外的只能到博客看了,要不看下面源码,

我对自己的源码没多少信心,

思路大概这样的,

首先最简单的加法乘法结果可以从平面当中读出来,

所以使用了列表索引,

然后加法和乘法都是将每一对符号相乘的结果分开保存再两个数组,

一个周期结束之后收集累加,

加法累加之后循环累加直到进位消失,

乘法就直接调用加法了,

减法就是取相反数然后执行加法,简单的,

除法最麻烦,

我最后的办法是暴力运算,

结果的每一位都选取9个数字尝试,

每位数乘以除数到的乘积,

然后通过共轭再次乘积对比得到离被除数最近的一个点,

然后确定数值然后累加到结果,

最后一步步得到结果,

所以乘法的次数相当多,速度慢,

相信没有别的好办法了在目前的认识水平,

然后那个loop_mark的数值可以增大,

会更精确,更慢..

文件是:同个目录的luo和shu两个模块.

源码如下,python 2.7.1 gcc4.5

luo.py

shu.py

猜你在找的VB相关文章