现在才知道bc竟然是可以编程的,不得不佩服linux各种工具的博大精深(推荐一本书,software tools

man bc,bc可加的参数有 bc [ -hlwsqv ],其中我们常用的也就是-l了,它的意思是定义一些常用的数学库,比如log,sin之类的,所以一般打开bc的命令为bc -l

常用的数学运算的书写方式

s (x) The sine of x, x is in radians.

c (x) The cosine of x, x is in radians.

a (x) The arctangent of x, arctangent returns radians.

l (x) The natural logarithm of x.

e (x) The exponential function of raising e to the value x.

j (n,x)
The Bessel function of integer order n of x.

至于这个Bessel function,目前我还没有接触过,我想一些学数学的可能用的比较多吧。

man中还给出了一个在bash中,用bc赋值的例子

pi=$(echo "scale=10; 4*a(1)" | bc -l)

用反正切函数求pi,数学真的很神奇

bc的语法和C语言差不多,给个喜闻乐见的计算阶乘的例子吧

define f(x) {if (x <= 1) return (1);return (x*f(x-1));
}

再给一个计算兔子生孩子(-_-)的例子,来说明数组的使用,毕竟很多时候我们还是懒得写函数的

h[1]=1
h[2]=1
for (i=3;i<=100;i++)h[i]=h[i-1]+h[i-2]
for (i=1; i<=100; i++) {print h[i],"       ";if (i%10==0) print "\n;"
}

另外数组下标是可以从0开始的

转载于:https://www.cnblogs.com/imageoneday/p/3510074.html

Linux小工具bc使用相关推荐

  1. Linux小工具(3)之/proc目录详细介绍(上)

    目录 前言 一.平台说明 二./proc目录概述 三.准备使用 (1)进程描述文件夹 (2)/proc目录下常见的文件夹 前言 Linux系统的使用有别于Windows系统,无论是系统信息还是应用软件 ...

  2. Linux小工具(4)之apt软件管理

    目录 前言 一.apt简介 二.工作原理 三.常用的apt命令(重点) 1.首先配置软件更新源 2.apt-get update 3.apt-cache系列 (3.1)apt-cache search ...

  3. linux小工具(2)终端记录器script命令

    前言:(内容不多,请耐心阅读) 首先,终端界面的显示是有缓存大小限制的,当在终端打印的消息超出缓存范围,它前面的打印消息就自动丢失. 那么,当需要记录下一段时间内的shell终端的所有输入命令和打印消 ...

  4. linux小工具(1)查看shell的命令行历史记录

    前言: 在linux的shell终端下,针对需要重复执行的命令,为了进行比较高效的作业,我们会直接使用历史命令. 下面介绍几种常用的方法: (1) ↑ 和 ↓ 键操作: ↑:向前查找(更早输入的命令) ...

  5. Linux小工具之axel 快速下载

    Axel 是一个轻量级下载程序,它和其他加速器一样,对同一个文件建立多个连接,每个连接下载单独的文件片段以更快地完成下载. Axel 支持 HTTP.HTTPS.FTP 和 FTPS 协议.它也可以使 ...

  6. linux小工具之-ccat

    点击在我的博客 xuxusheng.com 中查看,有更好的排版哦~ 在使用 cat 命令时,一个问题是输出的字符都是没有高亮的,这样就给阅读带来了一定的困难,这时候使用 ccat 的好处就体现出来了 ...

  7. GitHub 热点速览 Vol.30:那些提升效率的小工具们

    作者:HelloGitHub-小鱼干 摘要:虽然 GitHub 是一个学习技术的好去处,但是除了学习,它还集提高"搬砖"效率于一身.GitHub 上散落着各式各样的小工具,比如本周 ...

  8. linux仿mac os10,Win10就是不如Mac顺手?几款仿Mac小工具推荐

    这两天很多企业都延期开工了,对于某些特殊行业,也可以在家办公.问题来了,有的朋友平时在单位用的都是Mac,回到家猛地用回Windows,总有好多不顺手的地方.今天小编就推荐给大家几款小软件,让你在Wi ...

  9. linux系统安装后需要的有效小工具(持续更新)

    目录 前言 1.更新apt-get列表 2.安装git工具 3.安装vim工具 4.安装u-boot-tool 5.安装tree 6.安装hexedit 7.安装apt-file 8.arm-linu ...

  10. 推荐几个Linux命令行下性能监控小工具

    原文链接 在Linux中,CPU,内存等系统状态可以通过top命令查看,或者用图形界面的工具,如gnome-system-monitor.但是,有时候,想知道更详细的信息,比如说进程树之类的,网络具体 ...

最新文章

  1. 深度解析:AWS、谷歌云、IBM Cloud和微软 Azure四巨头2018将会有哪些布局?
  2. 多台linux无密码访问之方法二
  3. Linux文件系统中文版,Linux 文件系统-Go语言中文社区
  4. 同大取大同小取小口诀图解_微信课堂:峦头九星砂体图解
  5. Flex 当鼠标悬停在DataGrid某行上时用datatoolField显示当前行
  6. SpringMVC 、Struts的区别
  7. 扩展单精度格式是什么_SVE(可伸缩矢量扩展)介绍
  8. 特朗普前竞选经理犯罪证据曝光,竟是因不会 PDF 转换!
  9. Divisibility题解
  10. Dubbo透传traceId/logid的一种思路
  11. 基于51单片机WiFi温湿度远程控制
  12. 通过对TCPWindowSize的调整对网络流量的性能优化
  13. Allure趋势图本地显示
  14. AI搜索引擎优化工具-市场现状及未来发展趋势
  15. java jnlp 运行_JNLP文件如何能成功安装运行?
  16. Ubuntu burg
  17. python发送esc_使用win32prin将一行文本发送到Python中的ESC/POS打印机
  18. 计算机一级扫描件,学院年终科研成果统计提交成果扫描件要求
  19. Python+Matplotlib绘制曲线并实现鼠标跟随的放大镜
  20. Access denied for user ''@'localhost' (using password: NO)之idea坑~

热门文章

  1. usmssosetup 单点登录被禁用_单点登录系统,如果cookie被禁用了怎么办
  2. 【线段树入门题目集】
  3. 华为hs8545m如何复位_在华为东莞松山湖基地,见证一场始于AI质检的智能制造变革...
  4. asp.net 点击查询跳转到查询结果页面_【免费毕设】ASP.NET交通信息网上查询系统的设计与实现(源代码+论文+开题报告)...
  5. CNN是如何一层一层'理解'图像信息的
  6. 翻译:道路机动车辆驾驶自动化系统相关术语的分类和定义 J3016_202104
  7. 阿里云云计算 3 阿里云产品全家福
  8. 算法:判断是否是循环链表,并返回循环链表开始节点Linked List Cycle II
  9. 算法:获取链表的中间值Middle of the Linked List
  10. 易筋SpringBoot 2.1 | 第三十三篇:SpringBoot Reactor响应式编程实战二 Redis Lettuce