whileループが52回繰り返されるたびに変数を減らすには?

whileループが52回繰り返されるたびに変数を減らすには?
#!/bin/bash
h=0
l=0
while read user_input;
do
    [ "$user_input" -eq 1 ] && ((h++))
    [ "$user_input" -eq 2 ] && ((l--))

    echo "         $(($((h+l))/6))"
done

6で割る必要がある部分は、52個のユーザー入力を読むと5に減り、52個のユーザー入力を読むと4に減ります。どのように?

ベストアンサー1

#!/bin/bash
h=0
l=0
reads=0
divider=6
while read user_input;
do
    ((reads++))
    [ "$user_input" -eq 1 ] && ((h++))
    [ "$user_input" -eq 2 ] && ((l--))
    if [ "$((reads%52))" -eq 0 -a "$divider" -gt 1 ]; then
        ((divider--))
    fi
    echo "         $(($((h+l))/divider))"
done

おすすめ記事