Мой код:
import math x = input() print(math.asin(math.radians(float(x))))
Мой x был 0,7071067811865475, и в результате было какое-то иррациональное число от 0 до 1, но, насколько мне известно, оно должно было быть около 45
Вы конвертируете неправильное число с неправильной функцией.
>>> import math >>> x = 0.7071067811865475 >>> math.degrees(math.asin(x)) 44.99999999999999 >>>
То есть, учитывая x (что является синусом угла), вызовите asin для вычисления угла (в радианах), а затем используйте degrees чтобы преобразовать этот угол в градусы.
x
asin
degrees
math.radians преобразует в радианы, вы хотите math.degrees.
math.radians
math.degrees
Это также не в том месте, вы конвертируете число, а не угол. Вы хотите
print(math.degrees(math.asin(float(x))))
https://docs.python.org/3/library/math.html#angular-conversion