import numpy as np
import matplotlib.pyplot as plt

def approximation(x) :
    s = 0
    for k in range(1,101) :
        s += (-1)**(k+1)/(x+k)
    return s
    
print(approximation(0),approximation(2022))

X = np.arange(-0.99,10,0.01)
Y = [approximation(x) for x in X]
plt.plot(X,Y)
plt.show()

def fact(n) :
    r = 1
    for k in range(1,n+1) :
        r *= k
    return r

def derivee(k,x) :
    s = 0
    for i in range(1,101) :
        s += (-1)**(i+k+1)/((x+i)**(k+1))
    return s*fact(k)