done
echo "OK! you input the correct answer."
仔细比对一下这两个东西有啥不同喔!
^_^
再来,如果我想要计算
1+2+3+....+100
这个数据呢?
利
用循环啊~他是这样的:
[dmtsai@study bin]$
vim cal_1_100.sh
#!/bin/bash
# Program:
#
Use loop
to calculate "1+2+3+...+100" result.
# History:
# 2015/07/17
VBird
First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
s=0
#
这
是加
总
的
数
值
变数
i=0
#
这
是累
计
的
数
值,亦即是
1, 2, 3....
while [ "${i}" != "100" ]
do
i=$(($i+1))
#
每次
i
都
会
增加
1
s=$(($s+$i))
#
每次都
会
加
总
一次!
done
echo "The result of '1+2+3+...+100' is ==> $s"
嘿嘿!当你执行了『
sh cal_1_100.sh
』之后,就可以得到
5050
这个数据才对啊!这样瞭呼~
那么
让你自行做一下,如果想要让用户自行输入一个数字,让程序由
1+2+...
直到你输入的数字为止,
该
如何撰写呢?应该很简单吧?答案可以参考一下
习题练习
里面的一题喔!
12.5.2 for...do...done (
固定循环
)
相对于
while, until
的循环方式是必须要『符合某个条件』的状态,
for
这种语法,则是『
已经知道
要½行几次循环
』的状态!他的语法是:
for
var
in
con1 con2 con3 ...
do
程序段
done
以上面的例子来说,这个
$var
的变量内容在循环工作时:
1.
第一次循环时,
$var
的内容为
con1
;
2.
第二次循环时,
$var
的内容为
con2
;