如何估算 2^2^2^2^2^2 的大小?

想知道这种指数的大小如何估算,比如有多少个二进制或者十进制位。

阅读 7k
3 个回答

有人定义过b个a写成(a^a^...^a)的这个运算叫“Tetration”。

详情看Matrix67的这篇文章: http://www.matrix67.com/blog/archives/3857

以我的估计,很难有一个有效的方法有效的表示Tetration的对数运算。因为Tetration本来就是形成相当大数量的运算,增长实在是太快了,甚至指数运算也兜不住它。表示一个Tetration运算出来的数,甚至没有明显比Tetration更可行的其他形式。

另有这个Wiki页面,似乎提供了一些估计的方法,还没详细看。http://en.citizendium.org/wiki/tetration

我在运算顺序上坑了。呜咦……

如果是只算位数的话,直接用log来估一下嘛。
比如log10(2)大概是0.3多一点点, 2^2^2^2^2^2 的位数大概就是 0.3*2*2*2*2*2 = 9.6,向上补整是10位数。
如果要估算首位数字,那log10(2)的精度要高一点,考虑到第二位影响,估算至少需要小数点后3位,按0.301来估。这样0.301*2*2*2*2*2 = 9.63,首位数字是 10^0.63。因为log10(2) 大约 0.301,估计 10^0.63会比4大一点点,可以估算首位为4。

二进制应该可以一样来弄
ln2 = 11*2*2*2*2*2 = 16,17位数……
(好像有啥不对?嘛,二进制我搞不清楚……)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题