while練習之計算1到100的奇數和與continue用法
#!/bin/bash
let sum=0#let 常用於變數更新 let 變數=值
let i=1
while [ $i -le 100 ];do
if [ $[$i%2] -eq 1 ];then#$[]或者$(()) #echo $[1+2] 3 # echo ((5*8)) 40
let sum+=$i
fi
let i++#i++是先賦值在自增,++1是先自增在賦值
done
echo $sum
//-------------------------------------------------------------------------------------------------
#!/bin/bash
let sum=0
let i=0
while [ $i -lt 100 ];do
let i++
if [ $[$i%2] -eq 0 ];then
continue#跳出當前迴圈,注意這個當前迴圈指的是當前數字所在的整體迴圈
else
let sum+=$i
fi
done
echo $sum
//--------------------------------------------------------------------------------------
continue 例子
#!/bin/bash
while :
do
read -p "Input a number between 1 to 5: " num
case $num in
1|2|3|4|5) echo "Your number is $num!"
;;
*) echo "You do not select a number between 1 to 5!"
continue
echo "Game is over!"
;;
esac
echo 1111111111111111111111
done
#執行結果會發現 當數字大於5時 echo 11111111111111111 永遠不會出現 因為continue跳出的是這個數字所在
的所有迴圈(個人理解)