Bash 配列のすべての正の整数を合計します。

Bash 配列のすべての正の整数を合計します。

Bash配列のすべての正の整数を合計する方法。

これは私のコードです。

#!/bin/bash

arr=(2 43 -1 -33 24 12 -6)

for (( i = 0; i < ${#arr[@]}; ++i )); do
  if (( arr[i] > 0 )); then
    sum=`expr $sum + $i`
  fi
done
echo "$sum"

ベストアンサー1

まず、負でない正の数を選択する必要があります。

if (( arr[i] > 0 )); then

その後、配列を合計する必要があります価値インデックスの代わりに

sum=`expr $sum + ${arr[i]}`

または(すでに(( ... ))他の場所で算術評価構文を使用しているため)

sum=$((sum + arr[i]))

おすすめ記事