bc, в Linux командной строке калькулятора, достаточно опытный, чтобы вычислитьИспользуя дробный показатель с Ьсом
3^2
9
Даже отрицательный показателя не спутать:
3^-2
0.11111
Но когда он терпит неудачу, когда он содержит
9^0.5
Runtime warning (func=(main), adr=8): non-zero scale in exponent
Как может быть, что bc не может справиться с этим?
И что означает сообщение об ошибке?
Да, я прочитал http://www.linuxquestions.org/questions/programming-9/bc-and-exponents-containing-decimals-and-fractions-755260/ и решение
e(0.5*l(9))
2.99999999999999999998
дал там.
И да, это не хорошо, потому что точность теряется и
Калькулятор должен решить выражения. Вы не должны сделать жизнь проще для калькулятора, он должен быть другой путь вокруг ...
Эта функция была разработана, чтобы стимулировать пользователей писать свои собственные функции. Сделать его уникальным калькулятором, для которого требуется пользовательская функция для вычисления квадратного корня.
Это не мешает мне написать функцию для касательных или котангенсов, поскольку она выглядит довольно прямолинейно заданной s(x)
и c(x)
. Но, на мой взгляд, вычисление квадратного корня через пользовательскую функцию слишком много.
Почему каждый использует bc, если есть python? Скорость?
Второй аргумент выражения expr^expr должен быть целым числом (scale = 0). Но 0.5 имеет масштаб = 1. – hendrik
Замечание 'bc' уже имеет функцию коренного квадратного корня:' scale = 5; sqrt (9) ' – khaverim