用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