ArbTangent/Rizvan Zaidullin
ArbTangent/s02190290
f1from decimal import *f1from decimal import *
22
n3def pi():n3def pi_prec():
4    getcontext().prec += 24    getcontext().prec += 2
5    three = Decimal(3)5    three = Decimal(3)
6    (lasts, t, s, n, na, d, da) = (0, three, 3, 1, 0, 0, 24)6    (lasts, t, s, n, na, d, da) = (0, three, 3, 1, 0, 0, 24)
7    while s != lasts:7    while s != lasts:
8        lasts = s8        lasts = s
9        (n, na) = (n + na, na + 8)9        (n, na) = (n + na, na + 8)
10        (d, da) = (d + da, da + 32)10        (d, da) = (d + da, da + 32)
11        t = t * n / d11        t = t * n / d
12        s += t12        s += t
13    getcontext().prec -= 213    getcontext().prec -= 2
14    return +s14    return +s
1515
n16def mycos(x):n16def cos(x):
17    getcontext().prec += 217    getcontext().prec += 2
18    (i, lasts, s, fact, num, sign) = (0, 0, 1, 1, 1, 1)18    (i, lasts, s, fact, num, sign) = (0, 0, 1, 1, 1, 1)
19    while s != lasts:19    while s != lasts:
20        lasts = s20        lasts = s
21        i += 221        i += 2
22        fact *= i * (i - 1)22        fact *= i * (i - 1)
23        num *= x * x23        num *= x * x
24        sign *= -124        sign *= -1
25        s += num / fact * sign25        s += num / fact * sign
26    getcontext().prec -= 226    getcontext().prec -= 2
27    return +s27    return +s
2828
n29def mysin(x):n29def sin(x):
30    getcontext().prec += 230    getcontext().prec += 2
31    (i, lasts, s, fact, num, sign) = (1, 0, x, 1, x, 1)31    (i, lasts, s, fact, num, sign) = (1, 0, x, 1, x, 1)
32    while s != lasts:32    while s != lasts:
33        lasts = s33        lasts = s
34        i += 234        i += 2
35        fact *= i * (i - 1)35        fact *= i * (i - 1)
36        num *= x * x36        num *= x * x
37        sign *= -137        sign *= -1
38        s += num / fact * sign38        s += num / fact * sign
39    getcontext().prec -= 239    getcontext().prec -= 2
40    return +s40    return +s
t41A = input()t41a = input()
42E = input()42e = input()
43getcontext().prec = int(E) + 343getcontext().prec = int(e) + 3
44corner = Decimal(A) * Decimal('0.9') * pi() / Decimal('180')44rd = Decimal(a) * Decimal('0.9') * pi_prec() / Decimal('180')
45mytan = mysin(corner) / mycos(corner)45tan = sin(rd) / cos(rd)
46getcontext().prec = int(E)46getcontext().prec = int(e)
47print(str(+mytan))47print(str(+tan))
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op