dc

dc

任意精度计算器

说明

dc 是一款逆波兰表达式计算器,支持无限制精度的算术运算。它还允许您定义和调用宏。通常,dc从标准输入读取,也可以通过参数传入文件来求值。

语法

dc [选项] [文件...]

选项

-e, --expression=EXPR    # 评估表达式
-f, --file=FILE          # 评估文件内容
-h, --help               # 显示此帮助并退出
-V, --version            # 输出版本信息并退出
p 打印堆栈顶部的值并以换行符结束语句。
n 打印堆栈顶部的值并以空语句结束行。
f 打印整个堆栈,不做任何更改。
P 从栈顶弹出值。
c 清除堆栈。
d 复制顶部值并将其推入主堆栈。
r 反转堆栈中顶部两个元素的顺序。
Z 从堆栈中弹出值,计算其中的位数并压入该数字。
X 从堆栈中弹出值,计算其中的小数位数并压入该数字。
z 将堆栈长度推入堆栈。
i 从堆栈中弹出值并将其用作输入基数。
o 从堆栈中弹出值并将其用作输出基数。
k 从堆栈中弹出值并使用它来设置精度。
I 将输入基数的值推入堆栈。
O 将输出基数的值压入堆栈
K 将精度值压入堆栈。

示例

下面是 dc 命令在命令行完成的计算 10 * 10 得出结果 100,并推出的过程

$ dc        

10          # 1. 输入数字10
10          # 2. 输入数字10
*           # 3. 输入运算类型*表示乘
p           # 4. 输入p得到计算结果
100
q           # 5. 输入 q 退出 dc

示例显示在命令行结果 509

$ dc --expression="50 10 * 9 + p"
509

支持的运算

+ 从堆栈中弹出两个值,将它们相加,然后压栈结果。

- 弹出两个值,从弹出的第二个值中减去弹出的第一个值,并压栈结果。

* 弹出两个值,将它们相乘,然后压栈结果。结果中分数位数取决于当前精度值和两个参数中的分数位数。

/ 弹出两个值,将弹出的第二个值与弹出的第一个值相除,然后推送结果。分数位数由精度值指定。

% 弹出两个值,计算/命令将执行的除法的剩余部分,并推送该值。计算的值与序列 Sd dld/Ld*- 计算的值相同。

~ 弹出两个值,将弹出的第二个值与弹出的第一个值相除。首先推送商,然后推送余数。除法中使用的小数位数由精度值指定。

(序列 SdSn lnld/lnld% 也可以完成此功能,但错误检查略有不同。)

^ 使用弹出的第一个值作为指数,第二个值作为基数,弹出两个值并进行幂运算。忽略指数的分数部分。

| 弹出三个值并计算模幂。 弹出的第一个值用作约简模数; 这个值必须是一个非零数字,并且应该是一个整数。 弹出的第二个用作指数; 该值必须是非负数,并且该指数的任何小数部分都将被忽略。 弹出的第三个值是取幂的基数,它应该是一个整数。 对于小整数,这类似于序列 Sm^Lm%,但与 ^ 不同的是,此命令适用于任意大的指数。

v 弹出一个值,计算其平方根,然后压栈它。精度值的最大值和参数的精度用于确定结果中的小数位数。

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/dc/

(0)
AuroraAurora站点维系者
上一篇 2023年 12月 7日 下午7:20
下一篇 2023年 12月 7日 下午7:21

相关推荐

  • Java 数组

    数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java 语言中提供的数组是用来存储固定大小的同类型元素。 你可以声明一个数组变量,如…

    2023年 3月 4日
  • 28. 多态

    欢迎来到 Golang 系列教程的第 28 篇。 Go 通过接口来实现多态。我们已经讨论过,在 Go 语言中,我们是隐式地实现接口。一个类型如果定义了接口所声明的全部方法,那它就实…

    2023年 12月 5日
  • newusers

    文章目录newusers补充说明语法参数实例 newusers 用于批处理的方式一次创建多个命令 补充说明 newusers命令 用于批处理的方式一次创建多个命令。 语法 newu…

    入门教程 2024年 1月 10日
  • Git 查看提交历史

    Git 提交历史一般常用两个命令: git log – 查看历史提交记录。 git blame – 以列表形式查看指定文件的历史修改记录。 git log …

    2024年 4月 30日
  • consoletype

    文章目录consoletype补充说明语法实例 consoletype 输出已连接的终端类型 补充说明 consoletype命令 用于打印已连接的终端类型到标准输出,并能够检查已…

    入门教程 2023年 12月 7日
  • swapon

    文章目录swapon补充说明语法选项参数实例 swapon 激活Linux系统中交换空间 补充说明 swapon命令 用于激活Linux系统中交换空间,Linux系统的内存管理必须…

    入门教程 2024年 3月 11日
  • login

    文章目录login补充说明语法选项参数 login 登录系统或切换用户身份 补充说明 login命令 用于给出登录界面,可用于重新登录或者切换用户身份,也可通过它的功能随时更换登入…

    入门教程 2023年 12月 19日
  • arpd

    文章目录arpd补充说明语法选项参数实例 arpd 收集免费ARP信息 补充说明 arpd命令 是用来收集免费arp信息的一个守护进程,它将收集到的信息保存在磁盘上或者在需要时,提…

    入门教程 2023年 12月 6日
  • HTML 文本格式化

    HTML 文本格式化 加粗文本 斜体文本 电脑自动输出 这是 下标 和 上标 文章目录HTML 格式化标签HTML 文本格式化标签HTML 计算机输出 标签HTML 引文, 引用,…

    2023年 4月 11日
  • Java 多态

    多态是同一个行为具有多个不同表现形式或形态的能力。 多态就是同一个接口,使用不同的实例而执行不同操作,如图所示: 多态性是对象多种表现形式的体现。 现实中,比如我们按下 F1 键这…

    2023年 3月 9日
Translate »