Форум сайта python.su
857
Vaisaiдля знаменателя нужно сделать цикл
Подскажите пожалуйста, как реализовать данную формулу на питоне?
Не могу понять что с суммой делать
#!/usr/bin/env python3 # вычисляет сумму ряда e ^ (-x) с заданной точностью # # e ^ (-x) = 1 - x + (x ^ 2) / 2! - (x ^ 3) / 3! + # + ... + (-1 ^ n) * (x ^ n) / n! import math def emx(x, eps): s, sl, psl, i = 0, 1, 0, 1 while abs(sl - psl) > eps: s += sl psl = sl sl *= -x / i i += 1 return s if __name__ == '__main__': print(math.exp(-4)) for e in ( 1, 0.1, 0.01, 0.001, 0.0001, 0.00001, 0.000001, 0.0000001, ): x = 4 print('{} eps={}'.format(emx(x, e), e))
[guest@localhost py]$ ./emx.py
0.01831563888873418
0 eps=1
0.026668804446581998 eps=0.1
0.01897091738361557 eps=0.01
0.018355086418578255 eps=0.001
0.01830678595073219 eps=0.0001
0.018315259717020974 eps=1e-05
0.018315711651223043 eps=1e-06
0.018315641219918823 eps=1e-07
[guest@localhost py]$
Отредактировано py.user.next (Авг. 7, 2014 02:06:09)
Офлайн