如何计算变量底的对数呢?
121次浏览(过去30天)
显示旧的注释
这就跟你问声好!
我试着计算不同基数的对数——没有成功。我知道以10为底的对数或e是可以计算的。
例如:在输入log (a,b)后,我收到一个ERROR消息。
我想使用“a”作为一个变化的数字,并使用循环更改它,直到我得到一个好的结果。例如,“a”可以是- 1.05,1.003....
下面就是:
> > = 1.005;
> >日志(2)
使用日志出错
输入参数太多。
你能指导我怎么做吗?
0评论
答案(3)
约翰D 'Errico
2021年10月2日
编辑:约翰D 'Errico
2021年10月2日
写你自己的函数。保存在你的搜索路径。现在你有了。
(日志(10),logb (10))自然对数%
[log10 (5), logb (10))% log(10)到以5为底
[log2 (3), logb (2))% log(2)到以3为底
Logb (16,[2 3 4 5 16])% log(16) to the bases [2,3,4,5,16]
很简单。
函数L = logb(X,底)
% log(X)到base
%如果没有提供Base,则假定为自然对数。
如果(nargin < 2) ||为空(Base)
%默认情况下是自然日志
L = log(X);
其他的
%测试无效的基数
如果any(Base<=0) ||
错误('Base必须为> 0,且~= 1')
结束
L = log(X)./log(Base);
结束
结束
0评论
为副总经理
2021年10月2日
在log()的概要中,它没有说它接受两个参数。
对于以2为底,你可以使用log2()
一般来说,只需要记住对数的性质,并使用log()、log10()或log2()来计算任意以n为底的对数。