LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3517|回复: 5

gnome的计算器不会用啊,请教一下如何计算反对数?

[复制链接]
发表于 2009-3-24 01:43:25 | 显示全部楼层 |阅读模式
反对数的计算如何用?Windows的就有,Gnome的看起来更加高级复杂,不可能没有吧,怎么用谁给指点一下吧。
发表于 2009-3-24 02:13:08 | 显示全部楼层
Linux中有个命令行程序叫 bc ,计算器能做到的都可以用它来完成。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-3-24 23:45:40 | 显示全部楼层
bc更是不会啊,能不能指点一下如何用bc来计算反对数呢?
回复 支持 反对

使用道具 举报

发表于 2009-3-26 02:09:18 | 显示全部楼层
反对数在计算机术语里一般被叫做指数,记成exp,你看看你的gnome计算器里有没有那个按键。
至于bc里面怎么用,在命令行输入man bc可以得到bc的手册,向下翻几下页看到如下内容
  1.    MATH LIBRARY
  2.        If bc is invoked with the -l option, a math library is preloaded and the default scale is set to 20.   The  math  functions
  3.        will calculate their results to the scale set at the time of their call.  The math library defines the following functions:
  4.        s (x)  The sine of x, x is in radians.
  5.        c (x)  The cosine of x, x is in radians.
  6.        a (x)  The arctangent of x, arctangent returns radians.
  7.        l (x)  The natural logarithm of x.
  8.        e (x)  The exponential function of raising e to the value x.
  9.        j (n,x)
  10.               The bessel function of integer order n of x.
复制代码

可见如果要计算自然对数,用 l(x) ,要计算指数(反对数)用 e(x)。注意要用-l参数才能让bc加载数学库。

举个例子:  
  1. echo "e(13)" | bc -l
复制代码
就是计算以e为底的,指数为13次方的幂。
这里我用了命令行的管道功能,你也可以先在命令行 bc -l 进入文本交互模式,然后 e(13),得到结果后输入quit退出bc。
回复 支持 反对

使用道具 举报

发表于 2009-3-26 02:49:15 | 显示全部楼层
另外再补充一下怎么用e(x)和l(x)来计算 A的B次方,记为 A ^ B
如果 A=0 而且 B非0,A ^ B = 0
如果 A=0 且 B=0,A ^ B = 1
如果B<0,A ^ B = 1 / (A ^ (-B))
如果A<0且B不是整数,出错
如果A<0且B是整数,用bc运行以下脚本来计算
define nexp(A,B) {
  p = 1;
  for(i=1; i<=B; i++) {
    p = p*A
  }
  return p;
}
nexp(AAA,BBB)
其他通用情况: e(B*l(A))
例如计算2的10次方  2 ^ 10 , 可以用命令行 echo "e(10*l(2))" | bc -l
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-4-11 18:43:44 | 显示全部楼层
感谢没本,确实指数就是反对数,计算器上有的。数学基础差啊,汗……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表