Linux・シェル4 択難易度 基礎

次のコマンドの出力は?

echo $((7/2))

正答

  1. 3.5
  2. 4
  3. 3
  4. 7/2

解説

$(( )) は算術展開で、中の式を整数として計算する。bash の算術は整数しか扱えないため 7/2 は 3 になり、小数点以下は切り捨てられる。四捨五入もしないので 4 にはならない。選択肢 4 の 7/2 は echo 7/2 のように算術展開を使わなかったときの出力である。小数の計算が必要なら bc や awk に渡す(echo "7/2" | bc -l など)。余りは $((7%2)) で求められる。

参考: www.gnu.org

arithmetic

この問題を含む Linux・シェル のテストを制限時間つきで解く

Linux・シェルクイズへ