Этот вопрос и, в частности, принятый ответ могут быть вам интересны.
Эмануэль Берг
Ответы:
56
bcне работает с плавающей запятой, но делает десятичные числа с фиксированной точностью. -lФлаг Hauke упоминает грузы математической библиотеки для например. Триг функции, но это также означает,
[...] масштаб по умолчанию - 20
scaleявляется одной из ряда «специальных переменных», упомянутых на странице руководства. Вы можете установить его:
scale=4
В любое время вы хотите ( -lбыл ли использован или нет). Это относится к числу значащих цифр, используемых в десятичной дроби . Другими словами, последующие решения будут округлены до этого количества цифр после десятичной шкалы (== с фиксированной точностью).
Масштаб по умолчанию sans -lравен 0, что означает округление до целых чисел.
1) Числа в bc имеют шкалу. Масштаб числа не следует путать с масштабным коэффициентом. Тот же самый «масштаб» используется в качестве функции для запроса масштаба числа или в качестве параметра для установки коэффициента масштабирования.
echo "scale=scale(1.1);11/10" | bc will return 1.1
2) Коэффициент масштабирования определяет, сколько цифр хранится справа от десятичной точки при выполнении операций. Если s - текущий масштабный коэффициент, sa - масштаб первого операнда a, sb - масштаб второго операнда b, результаты усекаются следующим образом:
scale of result
a+b max(sa,sb)
a-b max(sa,sb)
a*b min(sa+sb , max(s,sa,sb))
a/b s
a%b so that a = b*quotient + remainder; remainder has sign of a
a^b min(sa×|b|, max(s,sa)); b must be integer
sqrt(a) max(s,sa)
3) В начале координат был препроцессор DC. Сейчас во многих системах bc - это отдельная программа.
echo "scale=4; 1/8" | bc
Ответы:
bc
не работает с плавающей запятой, но делает десятичные числа с фиксированной точностью.-l
Флаг Hauke упоминает грузы математической библиотеки для например. Триг функции, но это также означает,scale
является одной из ряда «специальных переменных», упомянутых на странице руководства. Вы можете установить его:В любое время вы хотите (
-l
был ли использован или нет). Это относится к числу значащих цифр, используемых в десятичной дроби . Другими словами, последующие решения будут округлены до этого количества цифр после десятичной шкалы (== с фиксированной точностью).Масштаб по умолчанию sans
-l
равен 0, что означает округление до целых чисел.источник
Страница man говорит:
Понимание этого может быть улучшено, действительно ...
источник
1) Числа в bc имеют шкалу. Масштаб числа не следует путать с масштабным коэффициентом. Тот же самый «масштаб» используется в качестве функции для запроса масштаба числа или в качестве параметра для установки коэффициента масштабирования.
2) Коэффициент масштабирования определяет, сколько цифр хранится справа от десятичной точки при выполнении операций. Если s - текущий масштабный коэффициент, sa - масштаб первого операнда a, sb - масштаб второго операнда b, результаты усекаются следующим образом:
3) В начале координат был препроцессор DC. Сейчас во многих системах bc - это отдельная программа.
Источник: [ https://plan9.io/magic/man2html/1/dc]
источник