永发信息网

为什么bash shell里面使用bc求余数总是0?

答案:1  悬赏:80  手机版
解决时间 2021-04-16 01:15
  • 提问者网友:孤山下
  • 2021-04-15 04:16
为什么bash shell里面使用bc求余数总是0?
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-04-15 05:11
#方法一:
[root@xuqn ~]#echo "9 % 5"| bc
4
#方法二:
[root@xuqn ~]#expr 9 % 5
4既然是求余数,就不要指定scale啦。
试试看吧。
追问的确是不指定scale就正常了,为什么呢?我这个计算的结果反正也是整数,加了scale应该没影响啊?追答问得好……
我没有查询到完整的解释,以下是我的看法,你可以尝试输入如下命令
[root@temp ~]#echo "1.111+1"| bc
2.111
[root@temp ~]#echo "scale=4; 1.11111+1"| bc
2.11111发现什么了?
在加法运算中,不指定小数位数的情况下,还是可以显示小数的。
即便是指定了位数,但实际情况与指定的值也不符。
故我认为,scale只用在指定除法运算(还有其他左右的,进制转换)的位数时才会生效,用在求模的时候会引发未知的异常。

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯