标签: bc

GNU BC:“模”% 的比例不是 0

如果尺度不是零,用%计算,比如3%2和46%4,往往会输出0。非0尺度的算法是如何设计的?

bc
scale=10
print 4%3   // output 0
Run Code Online (Sandbox Code Playgroud)

bc

13
推荐指数
2
解决办法
2万
查看次数

如何使用 bc(基准计算器)进行除法并获得分数结果?

bc
1/2
0

5/3
1

10/3
3
Run Code Online (Sandbox Code Playgroud)

将分数输入到 中时bc,结果将被截断为整数。如何避免这种行为,使得除法运算的输出是实数?

linux bc

11
推荐指数
3
解决办法
1万
查看次数

与 Gnu 的 bc 相除

我只是从 Gnu 的 bc 开始,并且一开始就被卡住了(非常令人沮丧......)。我想将两个数字相除并得到一个浮点数作为结果:

$bc
bc 1.06.94
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 

15/12
1
15.0/12.0
1
15.000000/12.000000
1
scale(15.00000)
5
Run Code Online (Sandbox Code Playgroud)

手册页说,除法返回一个与初始值具有相同比例的数字。显然这不是真的,或者我错过了一些东西。

谷歌搜索并没有带来任何新的见解(除了“BC”也可以代表“不列颠哥伦比亚省”)。

你看到我的错误了吗?更好的是,您知道 bc 的任何好的参考资料/教程吗?

gnu calculator bc

5
推荐指数
2
解决办法
2360
查看次数

为什么`bc` 忽略我的`obase`?

>>> bc
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
ibase = 16 
obase = 56
BE753DE5C17F1B6C9F5D1E8A628B74B0FFC4A7
 13 54 52 19 83 18 71 14 32 84 08 11 54 04 20 50 49 70 30 00 29 44 7\
7 33
Run Code Online (Sandbox Code Playgroud)

输入显然是十六进制的。现在我假设输出应该是基数为 56 的“数字”的十进制表示。但是最高输出块应该是 55,对吗?那么为什么我会看到一个“83”和一个“84”呢?

unix bc unix-utils

3
推荐指数
1
解决办法
250
查看次数

bc 中的乘法(基准计算器)

$ echo 2*1024|bc
20480
$ echo 2.0*1024|bc
2048.0
$ echo 2*1024.0|bc
2048.0
Run Code Online (Sandbox Code Playgroud)

那这是怎么回事?

更新:

dc 管理得很好

$ echo "2 1024 * p"|dc
2048
Run Code Online (Sandbox Code Playgroud)

bc

1
推荐指数
1
解决办法
126
查看次数

标签 统计

bc ×5

calculator ×1

gnu ×1

linux ×1

unix ×1

unix-utils ×1