zoukankan      html  css  js  c++  java
  • Shell中计算模块 bc的使用

    在linux终端中使用bc便捷计算


    在linux终端中如果需要进行一些计算,我们可以方便的使用bc这个工具来实现基本的数学计算功能。

    bc 是basic calculator/bench calculator的简称。其语法类似于C语言,支持加减乘除还有更多复杂的运算。

    1.使用方法

    bc可以通过两种方式进行使用:
    首先可以在bash中输入

    >>> bc
    1+2
    3
    

    直接进入交互模式,来进行加减乘除的运算。
    此外,更为通用的是利用管道的方式来进行计算:

    echo '6.5/2.7' | bc
    >>> 2
    echo 'scale=5;6.5/2.7' | bc    #其中scale是控制小数点位数
    >>> 2.40740
    

    2.功能选项

    bc有一系列功能开关:

    -h, --help: 帮助.
    -i, --interactive: 交互模式.
    -l, --mathlib: 预置数学程序.
    -q, --quiet: 安静模式.
    -s, --standard: 标准bc结构输入.
    -w, --warn: 非标准结构给出警告.
    -v, --version: 版本号.
    

    3.基本使用例子

    #关系运算符
    ||, &&, !, =, ==
    #基本数学运算
    +, -, *, /, %, ^,
    #自增,自减
    ++, --
    #逻辑运算符
    <, >, <=, >=, !=
    

    一些特殊的表达式参数:

    length()    #用于求表达式的结果长度
    length(300)
    3
    
    scale()  #用于获取表达式小数点后位数
    scale(3.14)
    2
    
    sqrt()  #求平方根
    scale=6;sqrt(21)
    4.582575
    
    #如果使用了bc -l,可以将预置的数学运算导入
    s(x)    	#sin函数,x为弧度
    s(3.14)
    .00159265291648695254
    
    c(x)		#cos函数
    c(0)
    1.00000000000000000000
    
    a(x)		#arctang函数
    a(sqrt(2)/2)
    0.61547970867038734106
    
    l(x)		#自然对数
    l(10)
    2.30258509299404568401
    
    e(x)		#自然数为底的指数函数
    e(2)
    7.38905609893065022723
    
    
    j(n,x)	#Basel函数,n阶
    j(1,3)
    0.33905895852593645892
    

    计算圆周率:
    scale=10; 4*a(1) #arctan(1)--pi/4
    定义函数:

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

    更详细用法:链接
    ref:1,2

  • 相关阅读:
    Epplus导出excel
    访问GitHub需要修改hosts
    如何将你的.Net Core程序部署成为服务
    生成雪花Id类
    文件操作帮助类
    工作流-WikeFlow
    《C语言进阶剖析》课程目录
    《C++深度解析》课程目录
    USB URB的status及其代表的意义
    数据结构优秀博文整理
  • 原文地址:https://www.cnblogs.com/Tom-Ren/p/9897805.html
Copyright © 2011-2022 走看看