檢查偶數的條件 - 確定如何寫在bash
if [ $(($n % 2)) -eq 0 ]
then
echo "$n is even number"
fi
如何檢查奇數?
if [ $(($n % ?????)) -eq 0 ]
then
echo "$n is odd number"
fi
感謝
檢查偶數的條件 - 確定如何寫在bash
if [ $(($n % 2)) -eq 0 ]
then
echo "$n is even number"
fi
如何檢查奇數?
if [ $(($n % ?????)) -eq 0 ]
then
echo "$n is odd number"
fi
感謝
使用 「不等於0」:
if [ $(($n % 2)) -ne 0 ]
then
echo "$n is odd"
fi
參見:http://tldp.org/LDP/abs/html/comparison-ops.html
您還可以使用 「N%2等於1」 自的剩餘奇數除以二是一個:
if [ $(($1 % 2)) -eq 1 ]
then
echo "$1 is odd"
fi
但前者(不等於0)是更普遍的情況,所以我會更喜歡它。
echo -n "Enter numnber : "
read n
rem=$(($n % 2))
if [ $rem -eq 0 ]then
echo "$n is even number"
else
echo "$n is odd number"
fi
上述所有使用的答案一個括號[
這是在bash
過時(我們正在談論bash
,對吧?)。該最好做法以達到奇數或偶數n
的決心是:
if ((n%2==0)); then
printf "%d is even\n" $n
else
printf "%d is odd\n" $n
fi
,或者作爲OP需要它,即檢查是否n
是奇數:
if ((n%2)); then
printf "%d is odd\n" $n
fi
有點空白,將有助於:'((N%2 == 0))' –
@glennjackman這不是強制性的了! –
爲真。但是爲可讀性和可維護性編寫代碼非常重要。 –
我喜歡簡單:
x=8; ((x%2)) || echo even
x=7; ((x%2)) && echo odd
否定表達式可能需要一點練習才能在開始時適應,但是當你這樣做時,它們是無價。 +1 – Jite