2010/1/15 Kurt Kraut <[email protected]>:
> Olá,
>
>
> Estou fazendo um script para calcular notas de alunos. A fórmula que tenho
> que executar é:
>
> N = (4 x Nota1 + 3 x Nota2 + 3 x N3) / 10
>
> Já tenho as notas em variáveis obtidas de um CSV que gerei. Então eu preciso
> multiplicar $nota1 por quatro, a $nota2 por três e a $nota3 por três também.
> Somar tudo isso e dividir por dez.
>
> Como o bc não trabalha com números com vírgulas e a maioria das notas têm,
> gostaria de obter ajuda sob como proceder.
>
>
> Atenciosamente,
>
>
> Kurt Kraut ([email protected])


Não é pra contrariar soluções bash-only, mas eu costumo tomar sopa com colher;)

Acho que o awk pode te ajudar a fazer um código mais simples.

LC_NUMERIC=pt_BR awk -W use-lc-numeric -F';'
'{media=(($2*4)+($3*4)+($4*3))/10; print $1,media}' arquivo.notas

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP

Responder a