rab*_*ius 5 linux math bash ubuntu
我需要检查数字是否均匀.
这是我尝试过的.
newY="281"
eCheck=$(( $newY % 2 ))
echo $newY
echo $eCheck
while [ $eCheck -eq 0 ]; do
newY=$((newY-1))
eCheck=$(( $newY % 2 ))
echo $newY
done
Run Code Online (Sandbox Code Playgroud)
......回来eCheck = 1
怎么样?281/2 = 140.5
我也尝试过使用bc,但它进入了一个无限循环eCheck=$(echo "scale=1;$newY%2" | bc)
小智 5
Nici是对的,"%"是模数,并给你剩下的除法.
您的脚本可以简化如下:
if [[ $((var % 2)) -eq 0 ]];
then echo "$var is even";
else echo "$var is odd";
fi
Run Code Online (Sandbox Code Playgroud)