как вычислить тригонометрические функции (синус, косинус, .. и т. д.) с результирующим значением, которое не является числом с плавающей запятой

avatar
shadow
8 августа 2021 в 16:15
97
0
0

В школе я узнал, что sin(π/6)=1/2 и cos(π/4)=1/(√2), но теперь в python я получаю только результаты с плавающей запятой, такие как: sin(π/6)=0.49999999999999994 и cos(π/4)=0.7071067811865475, так что есть ли способ найти значение результата, как в первом примере ? как уравнение a/(b√(c)) , какие a,b,c являются переменными, которые можно использовать в разделенном питоне.

Источник
das-g
8 августа 2021 в 16:21
3

Вероятно, вы ищете символическое вычисление (символическая математика) или что-то подобное. Библиотека для символьных вычислений в Python — это AFAIK SymPy (sympy).

Pygirl
8 августа 2021 в 16:23
7

(sympy.sin(0.25 * sympy.pi) --> sqrt(2)/2 и sympy.sin( sympy.pi/5) --> sqrt(5/8 - sqrt(5)/8)

gimix
8 августа 2021 в 18:44
0

Проверьте документы для модуля fractions. Пример есть cos(pi/3) и вы получаете точно 1/2

phuclv
9 августа 2021 в 03:57
0

@gimix нет тригонометрических функций в фракциях

gimix
9 августа 2021 в 07:13
0

Я имел в виду, что Fraction(math.sin(math.pi/6)).limit_denominator() даст Fraction(1, 2) по запросу. По общему признанию, это не будет работать для cos(pi/4) или более сложных примеров, поскольку оно не распознает квадратные корни.

Ответы (0)