【发布时间】:2015-02-05 02:03:24
【问题描述】:
我正在尝试解决这个 bash 脚本,该脚本从用户读取算术表达式并将其回显到输出屏幕,最后四舍五入到小数点后 3 位。
样本输入
5+50*3/20 + (19*2)/7
样本输出
17.929
我的代码是
read x
echo "scale = 3; $x" | bc -l
当有输入时
5+50*3/20 + (19*2)/7
**我的输出是**
17.928
机器希望它是什么
17.929
因此我得到了错误的解决方案。有什么想法吗?
【问题讨论】:
-
你的问题很模糊。你怎么称呼“样本输出”?你叫什么“我的输出”?你怎么称呼“机器想要它”?实际上,您希望脚本生成什么输出:截断或舍入?
-
样本输入是机器生成的用于检查我的脚本是否正确的输入,它期望输出是样本输出的输出。我的输出是我的脚本生成的输出,我需要的是我的输出类似于示例输出@YvesDaoust
-
也许我不确定说你没有让解释变得不那么晦涩是错误的。截断还是舍入?
标签: math arithmetic-expressions bc