Como diminuir uma variável uma vez por 52 iterações de um loop while?

0
#!/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

Preciso dividir por seis partes para reduzir para 5 depois de 52 leituras de entrada do usuário e 4 depois de mais 52, etc. Como?

    
por Wolfgang Steele 02.03.2018 / 23:44

1 resposta

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
    
por 02.03.2018 / 23:58