سؤال

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