作者Reinhard (偽ABJ)
看板Linux
標題Re: [問題] shell script for-loop increment
時間Wed Oct 1 15:43:08 2008
感謝回答
不過我就是不想用這種方法
因為數列太長時窮舉很困難…
※ 引述《Shenk (閑客)》之銘言:
: for是對一個Array作遞迴
: 可以先用seq產生一個你要的所有數字的Array
: 例如:
: for i in ` seq 0 0.5 1`; do echo $i; done
: 產生結果為
: 0.0
: 0.5
: 1.0
: ※ 引述《Reinhard (偽ABJ)》之銘言:
: : for loop 中的 increment 如果非整數該怎麼寫比較好呢?
: : 我寫過
: : for (( beta = 0; beta <= 1; beta=beta+0.5 ))
: : for (( beta = 0; beta <= 1; $beta=$beta+0.5 ))
: : for ((beta = 0; beta <= 1; $((beta=beta+0.5)) ))
: : 等等等
: : 都不給過…
: : shell script 的 arithmetic 真是超麻煩
: : 有沒有人習慣用 python 之類的來代替的?這會是個好主意嗎?
--
◎ Team Programming Dragon ◎
http://graphics.csie.ntu.edu.tw/~jonathan/tpd/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 157.82.147.209
推 Shenk:窮舉?~~~唔~~~你可以試試把seq那段改成seq 0 0.5 1000 10/01 16:22
→ Shenk:這樣你就可以得到一個0~100間隔為0.5的數列了... 10/01 16:23
→ Shenk:範例寫不好...回頭改:P~ 10/01 16:24
→ Reinhard:原來如此 懂了 感謝 果然跟 shell script 不很熟 :p 10/01 16:24
→ Shenk:阿...那個1000,100兩個數字筆誤= =a...理解就好^^a 10/01 16:27
→ leveler:可以用bc算floating point 10/01 20:35