DAY1
2016/12/31
1、编写shell脚本,计算1-100的和;
$ cat sum_day1.sh
#!/bin/bash
###to get the sum between 1 and 100
sum=0
for i in `seq 100`;do
sum=$[$sum+$i]
done
echo $sum
注意点:
1 echo $sum 的位置,我刚开始放在了循环里面,导致每次运算都显示出来
2 运算的时候,要加上 $[ ]
DAY1
2016-12-31
编写shell脚本,要求输入一个数字,然后计算出从1到输入数字的和,要求,如果输入的数字小于1,则重新输入,直到输入正确的数字为止;
vi judge2_day1.sh
#!/bin/bash
sum=0
n=0
read -p "please enter an number:" n
while [ $n -le 1 ] ; do
read -p "please reenter an number larger than 1:" n
done
if (($n>1));then
for n in `seq 1 $n`; do
sum=$[$n+$sum]
done
fi
注意:
下面是我刚开始写的错误脚本:
#!/bin/bash
sum=0
read -p "please enter an integer:" n
if (($n<1));then
read -p "please reenter an integer:" n
else
for n in `seq 1 $n`;do
sum=$n+$sum
done
echo $sum
错误点如下:
1 看到题目,审题,先判断是不是大于1,如果不是则重复输入知道大于1。
刚开始我想的是判断句的话,需要用if或者case,然后就进入死胡同了,不知道怎么重复写入。
其实 for while循环包含了判断,想通了这点,后面就好写了。
2 运算符号前后加上$[] ,这总是漏掉
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31404823/viewspace-2131723/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/31404823/viewspace-2131723/