I'm having a difficulty with using negative exponents in the program bc in Bash. If I execute echo "2*1.86929*10^05" | bc, I get a result of 373858.00000 while if I execute echo "2*1.86929*10^-05" | bc, I get a result only of 0. How can I get better accuracy when using negative exponents?

有帮助吗?

解决方案

By default, the output of bc is rounded to an integer. To keep the decimal part of the result, use bc -l, like this:

$ echo "2*1.86929*10^-05" | bc -l
.00003738580000000000

其他提示

You need to set the value of "scale" - so

scale=50
2*1.86929*10^-05

Gives .00003738580000000000000000000000000000000000000000

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top