大家都知道,windows下有个计算器工具,我们在工作生活中经常使用到它。但是,你可知Linux下也同样有个计算器吗?

当然,良许说的是命令行下的计算器工具,而不是界面型的计算器。良许是Linux应用开发工程师,平时基本是在命令行下工作,所以对于界面类的操作良许也不是非常擅长。

启动计算器

启动这个命令行计算器很简单,只需在终端下输入bc即可。bc是英语basic calculator的缩写。退出计算器也很简单,只需输入quit即可。

选项

当然,这个计算器也是可以带选项的,常用的选项如下:

-i:强制进入交互式模式;

-l:定义使用的标准数学库;

-w:对POSIX bc的扩展给出警告信息;

-q:不打印正常的GNU bc环境信息;

-v:显示指令版本信息;

-h:显示指令的帮助信息。

基本运算

启动计算器之后,就可以在里面进行计算了。基本的运算如下:

+ 加法

- 减法

乘法

/ 除法

^ 指数

% 余数

当然,如果只支持这些运算的话,那也太小儿科了,它的强大之处还在后头。

表达式运算

如果要计算一个表达示,直接在bc里输入表达式即可。bc会将变量存储,其它表达式也可以直接使用这个变量。

进制切换

作为一个程序员,我们经常与二进制,十进制,十六进制进行打交道,bc当然也支持这些操作。输入和输出的数系基分别存储在ibase和obase变量中,默认值为10,有效的数值是2到16。也就是说,我们除了常规的2、8、10、16进制,还可以使用3、5、7、9等进制。

但是,在进行设置的时候,一定要先设置obase,再设置ibase。因为如果先设置ibase的话,再设置obase时,obase等号后面的数字就会被认为是ibase设置的进制值。

精度调整

bc默认的精度是0,也就是说,bc是默认以整数的方式进行存储。我们可以通过设置scale这个变量来进行调整精度。

使用内置函数

除了简单的算术操作符,bc还通过外部的数学函数库来提供许多高级的数学函数。此时,应该使用-l选项。常用的函数如下:

N的二次方根 sqrt(N)

X的正弦(X是弧度) s(X)

X的余弦(X是弧度) c(X)

X的反正弦(返回值是弧度) a(X)

X的自然对数: l(X)

X的指数对数: e(X)

编程运算

作为一个计算语言,bc支持简单的声明(变量赋值、中断、返回等)、复合语句(if、while、for loop等)和自定义函数。这个功能就比较高级,更详细的内容可以参考官方指南。

通过管道操作

直接上例子:

也能够使用HERE 命令:

能够使用内置的变量 last 引用上一次的结果:

last 也能够用 点号取代:

非交互界面下使用bc

到目前为止,我们一直在交互界面下使用bc。不过更加流行的使用bc的方法是在没有交互界面的脚本中运行bc。这种情况下,你可以使用echo命令并且借助管道来向bc发送输入内容。

运行结果:

一个简单的计算三角形面积的程序

进行结果:

结语

bc这个命令行计算器非常强大,至少比window自带的计算器要强大很多。这个工具特别适合linux开发人员,在无需打开手机计算器的情况下,很方便的就可以进行数学运算。同时,也可以编写脚本进行更复杂的数学运算。更强大的功能还有待你的发现!

更多精彩内容,请关注公众号良许Linux,公众内回复1024可免费获得5T技术资料,包括:Linux,C/C++,Python,树莓派,嵌入式,Java,人工智能,等等。公众号内回复进群,邀请您进高手如云技术交流群。

linux计算器保存文件,Linux里隐藏的计算器,你知道它的奥秘吗?相关推荐

  1. linux怎样保存文件,linux不能保存文件如何解决

    linux不能保存文件如何解决 发布时间:2020-05-06 10:38:21 来源:亿速云 阅读:317 作者:小新 linux不能保存文件如何解决?相信有很多人都不太了解,今天小编为了让大家更加 ...

  2. linux无法保存文件,Linux系统创建文件后无法保存

    生产环境: 操作系统:CentOS [[email protected] html]# vi test_conn_use_db.php "test_conn_use_db.php" ...

  3. linux的头文件下载,Linux内核头文件(linux headers)

    更新 Linux 内核头文件(linux headers) 三 8th, 2013 2,474 views | 发表评论 | Trackback 一般来说,如果不是自己编译 kernel,那么更新头文 ...

  4. Linux里隐藏的计算器,你知道它的奥秘吗?

    大家都知道,windows下有个计算器工具,我们在工作生活中经常使用到它.但是,你可知Linux下也同样有个计算器吗? 当然,良许说的是命令行下的计算器工具,而不是界面型的计算器.良许是Linux应用 ...

  5. linux网络保存退出,linux编辑文件后如何保存退出

    linux编辑文件后如何保存退出? 命令是wq 保存并退出. 首先按ESC进入Command模式,然后输入":wq",回车就可以保存并退出了. 推荐:<Linux教程> ...

  6. linux批量更新文件夹里,Linux下使用touch批量修改文件夹和文件的时间

    发布时间:2015-07-26 22:51:41 下面只有两个参数存在差别,......[阅读全文] 阅读(3186) | 评论(0) | 转发(0) 发布时间:2015-06-19 17:25:38 ...

  7. linux退出不保存文件,linux不保存退出命令

    本文收集整理关于linux不保存退出命令的相关议题,使用内容导航快速到达. 内容导航: Q1:Linux如何列出全部命令? compgen bash内置命令可以完成支持命令的查看: compgen - ...

  8. windows和linux添加引导文件,Linux与Windows 10用grub引导教程-Go语言中文社区

    前言 去年暑假的时候,写了一篇如何装 Linux 和 Windows 10 双系统的文章发在了简书上,我写这篇文章的原因是当初装双系统确实是折腾了许久,网上也找不到一篇详尽的教程.由于去年对于写教程还 ...

  9. linux的重要文件,Linux中重要文件夹介绍

    Linux中重要的文件夹介绍 嵌入式助教苗沛2014 01 08 知识讲解 对于linux新手来说 最感到迷惑的问题之一就是文件都存在哪里呢 特别是对于那些从windows转过来的新手来说 linux ...

最新文章

  1. 笔记 | 吴恩达Coursera Deep Learning学习笔记
  2. python怎么控制while循环_Python流程控制之while循环怎么学呢?老男孩Python
  3. 一次彻底搞透协议设计(没做过通讯底层也没有关系)!
  4. 深度学习算法原理_用于对象检测的深度学习算法的基本原理
  5. HandAI开源项目,拉近人和摄影的距离:基于手势识别完成不同的拍摄行为
  6. C++奇特的递归模板式
  7. matlab定积分如何使用,如何用matlab计算定积分.pdf
  8. AB_PLC编程软件RSLogix_500_与PLC通讯详细说明
  9. ImageJ 中文教程(细胞计数)
  10. Android半透明
  11. linux系统怎么拨号上网,如何在Linux操作系统下ADSL拨号上网?
  12. html里怎么计算梯形周长公式是什么,梯形周长公式计算公式
  13. python如何下载安装spacy_Python spaCy
  14. 【Matlab图像拼接】块匹配全景图像拼接【含源码 742期】
  15. 数据库SQL实战 --43.将id=5以及emp_no=10001的行数据替换成id=5以及emp_no=10005
  16. 国内外关于监管企业内控的法律文件
  17. java环境搭建及概述
  18. 客快物流大数据项目(八十一): Kudu原理
  19. Git、Gerrit、Repo三者的区别及使用
  20. 【bzoj3039】玉蟾宫

热门文章

  1. JS截取字符串方法实例
  2. 测试适合染发颜色的软件,你知道哪种染发颜色最适合你吗?来测试看看
  3. [附源码]Python计算机毕业设计党员学习管理系统
  4. python转移路径cd_改变当前路径 (cd)
  5. unity3d 三分钟实现简单的赛车漂移
  6. java登录器20100206_锄 - Minecraft Wiki,最详细的官方我的世界百科
  7. MIME之quoted-printable编码与base64编码(例题+图解)
  8. 基于Adam算法优化GRU神经网络的短期负荷预测(Python代码实现)
  9. 锁定计算机怎么锁,电脑锁定方法 电脑如何锁定
  10. 软件测试的基本流程和方法