использование отрицательных показателей с bc в Bash

У меня возникли трудности с использованием отрицательных показателей в программе bc в Bash. Если я выполню echo "2*1.86929*10^05" | bc, я получу результат 373858.00000, а если я выполню echo "2*1.86929*10^-05" | bc, я получу результат только 0. Как повысить точность при использовании отрицательных показателей?


person d3pd    schedule 28.02.2013    source источник


Ответы (2)


По умолчанию вывод bc округляется до целого числа. Чтобы сохранить десятичную часть результата, используйте bc -l, например:

$ echo "2*1.86929*10^-05" | bc -l
.00003738580000000000
person user000001    schedule 28.02.2013
comment
Это хорошо работает. Большое спасибо за вашу помощь в этом. - person d3pd; 04.03.2013

Вам нужно установить значение "масштаба" - так

scale=50
2*1.86929*10^-05

Дает .0000373858000000000000000000000000000000000000000000

person DrC    schedule 28.02.2013
comment
Спасибо за вашу помощь. У меня получилось так: echo "scale=50; 2*1.86929*10^-05" | bc. - person d3pd; 03.10.2014