(五)、Bash数学运算之 expr

2021-01-14  本文已影响0人  雪燃归来

(一)、语法

expr语法
expr操作符对照表(上)
expr操作符对照表(下)

(二)、例子

num1=10
num2=20
$num2 \> $num1
$num1 + $num2
num3=`expr $num1 + $num2` // 30
num3=`expr $num1 - $num2` // 10
num3=`expr $num1 \* $num2` // 200
num3=`expr $num2 / $num1` //2
num3=`expr $num2 % $num1` // 0
num3=$(($num1+$num2))
输入一个正整数num,然后计算1+2+3+...+num,必须对num为正整数做判断,不符合应当允许再次输入。
#!/bash/bin
#

while true
do
    read -p "pls input a positive number: " num
    expr $num + 1 &> /dev/null
    if [ $? -eq 0 ];then
        if [ `expr $num \> 0` -eq 1 ];then
            for((i=1;i<=$num;i++))
            do
                sum=`expr $sum + $i`
            done
            echo "1+2+3+...+$num = $sum"
            exit
        fi
    fi
    echo "Error, input enlegal"
    continue
done

代码解析

expr $num + 1 &> /dev/null

计算 $num + 1 并将计算得到的结果扔到垃圾桶中

$?表示最近一次执行的结果,如果成功,返回为0,如果不成功返回其他数字。

上一篇 下一篇

猜你喜欢

热点阅读