脚本计算器师(Script calculator division)

2019-10-16 15:46发布

我有我的语法有问题下面,我想输出十进制两个数字的分工,但如果我输入4和5,我的输出为0不是0.8的时候我把所有其他工作的罚款。

case $ch in
  1)sum=`expr $n1 + $n2`
   echo "Sum ="$sum;;
  2)sum=`expr $n1 - $n2`
    echo "Sub = "$sum;;
  3)sum=`expr $n1 \* $n2`
    echo "Mul = "$sum;;
  4)sum=`expr $n1 / $n2`
    echo "Div = "$sum;;
  *)echo "Invalid choice";;
esac

Answer 1:

EXPR只实现整数运算。 考虑使用别的东西,像DC 。



Answer 2:

使用bc

sum=`echo -e "scale=5\n$n1/$n2" | bc`

你的部门将给予0.8与此有关。



文章来源: Script calculator division
标签: bash shell logic