Ryuk
(usa Nenhuma)
Enviado em 16/04/2018 - 18:17h
Mauriciodez escreveu:
msoliver escreveu:
Boa tarde Mauricio.
Não entendi o problema . . . .
Da forma que vc postou está mostrando o nº de casas decimais definido em "scale".
Uai velho .. o problema é q não está funcionando ... veja
aqui funciona de boa ...
mauricio@phantom ~ $ a=1000;b=132;echo "scale=3;$b/$a*100"|bc
13.200
aqui não ... o resultado era pra ser 13.20 e não 13.00
mauricio@phantom ~ $ a=1000;b=132;echo "scale=2;$b/$a*100"|bc
13.00
aqui tb não ... o resultado era pra ser 13.2 e não 10.0
mauricio@phantom ~ $ a=1000;b=132;echo "scale=1;$b/$a*100"|bc
10.0
viu o problema aí ???
------------------------------------------| Linux User #621728 |-----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux User #621728 |-----------------------------------------
O problema aí está na sequência de cálculos no bc, veja:
scale=2
132/1000
.13
.13*100
13.00
Ou seja, quando ele faz a divisão 132/100 o resultado é 0,13 com scale=2 ou 0,1 com scale=1. Depois é que vem a multiplicação com 100 (0,13x100=13 ; 0,1x100=10)