northwolves 发表于 2014-2-11 14:26:28

最少的log运算次数

如果打算求出log1.1,1.2,....log9.9 共89个1位小数的对数值,最多三次四则运算,至少需要知道几个整数的log值(1,10,100除外)?

如: 已知log2=0.3010,log3=0.4771
那么: log4=2*log2
         log1.6=4*log2-1
         log3.6=2*(log2+log3)-1
         log2.5=1-2*log2

gxqcn 发表于 2014-2-11 14:43:27

11~99 间共有 21 个素数,若要计算它们各自十分之一的常用对数,你会怎么组合?

liangbch 发表于 2014-2-11 16:00:39

同意楼上,至少需要预先计算5以外的20个素数的对数,log(5)可用1-log(2)来代替。

northwolves 发表于 2014-2-11 17:58:21

只需要保留3位有效数字,部分小数是否可以使用公式求得?

northwolves 发表于 2014-2-11 18:04:15

log9.0--->log9.9

0.954
0.959
0.964
0.968
0.973
0.978
0.982
0.987
0.991
0.996

wayne 发表于 2014-2-11 18:05:05

那这个题目就变得很水了,假设我只知道log2的任意精度,那么,其他数字(1.1-9.9)的3位有效数字总能根据log2的值求出来, :)

northwolves 发表于 2014-2-11 18:31:05

谢谢各位的回复。其实本题的初衷是实现1.1-9.9 的对数的心算,所以要求计算简单,当然至少得背会其中的几个。我初中时都能背下来,现在几乎忘光了

northwolves 发表于 2014-2-14 00:17:15

log(1.1)=log(11)-1
log(1.2)=2*log(2)+log(3)-1
log(1.3)=log(13)-1
log(1.4)=log(2)+log(7)-1
log(1.5)=log(3)+log(5)-1
log(1.6)=4*log(2)-1
log(1.7)=log(17)-1
log(1.8)=log(2)+2*log(3)-1
log(1.9)=log(19)-1
log(2)=log(2)
log(2.1)=log(3)+log(7)-1
log(2.2)=log(2)+log(11)-1
log(2.3)=log(23)-1
log(2.4)=3*log(2)+log(3)-1
log(2.5)=2*log(5)-1
log(2.6)=log(2)+log(13)-1
log(2.7)=3*log(3)-1
log(2.8)=2*log(2)+log(7)-1
log(2.9)=log(29)-1
log(3)=log(3)
log(3.1)=log(31)-1
log(3.2)=5*log(2)-1
log(3.3)=log(3)+log(11)-1
log(3.4)=log(2)+log(17)-1
log(3.5)=log(5)+log(7)-1
log(3.6)=2*log(2)+2*log(3)-1
log(3.7)=log(37)-1
log(3.8)=log(2)+log(19)-1
log(3.9)=log(3)+log(13)-1
log(4)=2*log(2)
log(4.1)=log(41)-1
log(4.2)=log(2)+log(3)+log(7)-1
log(4.3)=log(43)-1
log(4.4)=2*log(2)+log(11)-1
log(4.5)=2*log(3)+log(5)-1
log(4.6)=log(2)+log(23)-1
log(4.7)=log(47)-1
log(4.8)=4*log(2)+log(3)-1
log(4.9)=2*log(7)-1
log(5)=log(5)
log(5.1)=log(3)+log(17)-1
log(5.2)=2*log(2)+log(13)-1
log(5.3)=log(53)-1
log(5.4)=log(2)+3*log(3)-1
log(5.5)=log(5)+log(11)-1
log(5.6)=3*log(2)+log(7)-1
log(5.7)=log(3)+log(19)-1
log(5.8)=log(2)+log(29)-1
log(5.9)=log(59)-1
log(6)=log(2)+log(3)
log(6.1)=log(61)-1
log(6.2)=log(2)+log(31)-1
log(6.3)=2*log(3)+log(7)-1
log(6.4)=6*log(2)-1
log(6.5)=log(5)+log(13)-1
log(6.6)=log(2)+log(3)+log(11)-1
log(6.7)=log(67)-1
log(6.8)=2*log(2)+log(17)-1
log(6.9)=log(3)+log(23)-1
log(7)=log(7)
log(7.1)=log(71)-1
log(7.2)=3*log(2)+2*log(3)-1
log(7.3)=log(73)-1
log(7.4)=log(2)+log(37)-1
log(7.5)=log(3)+2*log(5)-1
log(7.6)=2*log(2)+log(19)-1
log(7.7)=log(7)+log(11)-1
log(7.8)=log(2)+log(3)+log(13)-1
log(7.9)=log(79)-1
log(8)=3*log(2)
log(8.1)=4*log(3)-1
log(8.2)=log(2)+log(41)-1
log(8.3)=log(83)-1
log(8.4)=2*log(2)+log(3)+log(7)-1
log(8.5)=log(5)+log(17)-1
log(8.6)=log(2)+log(43)-1
log(8.7)=log(3)+log(29)-1
log(8.8)=3*log(2)+log(11)-1
log(8.9)=log(89)-1
log(9)=2*log(3)
log(9.1)=log(7)+log(13)-1
log(9.2)=2*log(2)+log(23)-1
log(9.3)=log(3)+log(31)-1
log(9.4)=log(2)+log(47)-1
log(9.5)=log(5)+log(19)-1
log(9.6)=5*log(2)+log(3)-1
log(9.7)=log(97)-1
log(9.8)=log(2)+2*log(7)-1
log(9.9)=2*log(3)+log(11)-1   

liangbch 发表于 2014-2-19 12:45:47

楼主大概是 看到“中国雨人”周玮的故事,想用对数表心算开高次方吧。
页: [1]
查看完整版本: 最少的log运算次数