我想用泰勒系列解决arctan(x),但我的代码不起作用。我该如何解决这个问题?
#!usr/bin/python
from numpy import *
def err(string):
print string
raw_input ('Press Enter to Exit')
sys.exit()
def postive_term(x)
sum_i = 0.0
for i in range(50):
Y(i) = 1**((4.0*i)+1.0)/((4.0*i)+1.0)
sum_i = Y(i)
return sum_i
def negatif_term(x)
sum_j = 0.0
for j in range(50):
S(j) = 1**((4.0*j)+3.0)/((4.0*j)+3.0)
sum_j = S(j)
return sum_j
u(i) = sum_i - sum_j
print 'result Tan^{-1} (x)=', u(i)`
答案 0 :(得分:1)
代码中存在一些语法错误,包括您获取用户输入的方式以及如何将这两个函数称为正面和负面条件;下面是一个工作版本。请注意,这只会在区间(-1,1)中收敛,您可以使用math
包中的#!/usr/bin/python
import sys
def positive_term(x):
sum_i = float(x)
for i in range(1,50):
sum_i += x**((4*i) + 1) / (4.0*i + 1.0)
return sum_i
def negative_term(x):
sum_i = 0.0
for i in range(1,50):
sum_i += x**((4*i)-1)/(4.0*i - 1.0)
return sum_i
x = float(sys.argv[1])
print 'result Tan^{-1} (%.1f)= %.5f' % (x, positive_term(x) - negative_term(x))
函数进行检查。
public function test()
{
global $data;
return $data->get();
}