Найти - Пользователи
Полная версия: Что за косяк с тригонометрическими функциями? Как я их использую тут.
Начало » Python для новичков » Что за косяк с тригонометрическими функциями? Как я их использую тут.
1
San4az
#z_3_4
import math
a = float(input("Введите число 'a' для расчёта значения функции: "))
b = float(input("Введите число 'b' для расчёта значения функции: "))
x = float(input("Введите число 'x' для расчёта значения функции: "))
y = float(input("Введите число 'y' для расчёта значения функции: "))
print("Значения функций:\n1-ая: {}\n2-ая: {}\
", format(abs(x),
str(3 * math.sin(2 * math.radians(a)) * math.cos(3 * math.radians(b)))))
print("\n3-я: {}\n4-ая: {}\
", format(-5 * math.sqrt(x + math.sqrt(y)),
str((math.sqrt(1 - x) + math.sqrt(1 + x)) / (2 * math.sqrt(x)))))

выдаёт:
Traceback (most recent call last):
File “/home/ubuntu/workspace/San4az/z_3_4.py”, line 16, in <module>
str((math.sqrt(1 - x) + math.sqrt(1 + x)) / (2 * math.sqrt(x)))))
ValueError: precision too big
FishHook
У меня другая ошибка, скажи какие коэффициенты вводишь?
San4az
FishHook, любые. Попробовал Ваши, тоже самое
Что в Cloud9, что в IDLE 3.4.3

Как тут img размещать? (что-то не нашёл)
FishHook
Попробуйте запустить программу просто из консоли, без помощи ИДЕ.
San4az
FishHook, через консоль тоже самое
FishHook
ОК, щас установлю третий
FishHook
Ты слишком запутал формулу, разложим её на составляющие (декомпозиция - первый помощник программиста)
# -*-coding:utf-8-*-
import math
a = float(input(u"Введите число 'a' для расчёта значения функции: "))
b = float(input(u"Введите число 'b' для расчёта значения функции: "))
x = float(input(u"Введите число 'x' для расчёта значения функции: "))
y = float(input(u"Введите число 'y' для расчёта значения функции: "))
absx = abs(x)
frm1 = 3 * math.sin(2 * math.radians(a)) * math.cos(3 * math.radians(b))
#print(format(absx, frm1))
frm2 = -5 * math.sqrt(x + math.sqrt(y))
frm3 = (math.sqrt(1 - x) + math.sqrt(1 + x)) / (2 * math.sqrt(x))
print(frm1, frm2, frm3)


получаем ошибку

Traceback (most recent call last):
  File "/Users/fish/PycharmProjects/test/test.py", line 13, in <module>
    frm3 = (math.sqrt(1 - x) + math.sqrt(1 + x)) / (2 * math.sqrt(x))
ValueError: math domain error
Думаем верхней головой и понимаем, что мы здесь (1 - x) получаем отрицательное число, а корень из отрицательного числа не извлекается.
San4az
FishHook, лол…
спасибо
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB