数字を追加するスクリプトに問題があります。

数字を追加するスクリプトに問題があります。

今スクリプトの送信に問題があります。現在進行中の状況をなぜ受け入れないのかご存知の方がいらっしゃるのか気になります。 6、9、-4、7を一緒に追加しようとしていますが、私のスクリプトはこれを行っています。たぶんそれを改善する方法がありますか?どんなアイデアでも大きな助けになります。

#!/bin/bash

sum=0

for number in $1 $2 $3 $4
do
        sum=$(($1 + $2 + $3 + $4))
        echo $number

done

echo $sum

ベストアンサー1

4つの数字だけを追加するには、次のようにすれば十分です。

sum() {
  printf '%d\n' "$(( $1 + $2 + $3 + $4 ))"
}

または、必要な数の数字を追加したい場合:

sum() {
  local number sum

  for number; do
    (( sum += number ))
  done

  printf '%d\n' "$sum"
}

おすすめ記事