用shell脚本计算n个数和
1. 怎样编写shell程序要求:从键盘上输入n个整数,把其中的偶数加起来求和,并将该和输出
#/bin/sh
#这个地方的NUM 就是要输入的n个整数个数控制
NUM=$1
total=0
echo "the num is ${NUM}"
for((i=0;i < ${NUM};i++))
do
read n
yushu=`echo $((${n} % 2))`
if [ 0 -eq ${yushu} ]
then
total=`expr ${total} + ${n}`
fi
done
echo "${total}"
2. 编写shell脚本,输入n,求1-n的累加和
#!/bin/bash
read-p"Inputvalueofn:"n
sum=0
i=1
while(($i<=$n))
do
sum=$(($sum+$i))
i=$(($i+1))
done
echo"SUMis$sum."
3. 编写shell脚本,输出1-n的总和,将结果写到文件中,n为输入参数
sum=0
for (( i = 1; i <= $1; i++ )); do
sum = $((sum+i))
done
echo $sum > 你的文件的绝对路径或相对路径
4. 怎么用shell编写计算1+2+3…+n
shell脚本部分:
ojbk
5. 创建一个shell 脚本,它从用户那里接收10个数,求和,并显示输出结果。
let sum=0
for((i=1;i<=10;i++));
do
read -p '请输入第'$i'个数:' num$i;
let sum=sum+num$i;
done
echo "总和为:$sum"
6. SHELL脚本小问题..很简单的,N个数求和
#### awk
awk 'BEGIN{sum=0}{sum+=$0}END{print sum;}' a.txt
####################################################### bash
#!/bin/bash
##file sum.sh
sum=0
exec 3<>$1
while read -n 1024 1 <&3
do
sum=$((l+sum))
done
exec 3>&-
echo $sum
####################################################### end
####################################################### demo
./sum.sh a.txt
7. linux用shell脚本求命令行上所有整数和
亲测楼上的运行不起,这里给一个我亲测可用的shell脚本
#!/bin/bash
sum=0
forvarin$*
do
sum=$((sum+var))
done
echo"thesumofallnumberis$sum"
exit0
8. 各位大哥大姐,问你们个linux的题。 设计一个shell程序计算n个数字的累加和及算数平均值:
#!/bin/bash
[ $# -ne 1 ] && exit 1 #判断参数个数
[ "$1" -le 0 ] && exit 1 #判断参数合法性
sum=0
for (( i=1;i<=$1;i=i+1 ))
do
read -p "Input number #$i: " num[$i]
sum=$((sum+num[$i]))
done
average=$((sum/$1))
echo "sum: $sum"
echo "average: $average"
exit 0
9. 编写一个shell脚本,求累加和1+2+3……+100,输入s=5050;然后再运行该脚本,Lin
指定n数值,求1+…+n和
[root@server opt]# more n.sh
#!/bin/sh
sum=0
function ff_forsum(){
for num in $(seq $1)
do
sum=$(($sum+$num))
done
}
function ff_whilesum(){
i=1
while(($i<=$1))
do
sum=$(($sum+$i))
i=$(($i+1))
done
}
# call ff_forsum
ff_forsum $1
echo $sum
sum=0
# call ff_whilesum
ff_whilesum $1
echo $sum
10. LINUX:编写一个shell脚本,并利用函数实现数列求和运算
#!/bin/bash
sum=0
if[$#-ne2]
then
echo"Pleaseinputtwonumbers!"
elif[$1-gt$2]
then
echo"."
else
foriin$(seq$1$2)
do
sum=`expr$sum+$i`
done
echo""$1~$2"sumis$sum"
fi
#执行结果
#[root@localhostopt]#./b.sh36
#"3~6"sumis18
#[root@localhostopt]#./b.sh3
#Pleaseinputtwonumbers!
#[root@localhostopt]#./b.sh356
#Pleaseinputtwonumbers!
#[root@localhostopt]#./b.sh32
#.
#[root@localhostopt]#./b.sh325
#"3~25"sumis322