数列,很自然地理解就是1列数,不过这列数一般是有规律可循的。在小学经常做的找规律填数题,实际上就是为一个数列找出规律,根据规律来填充数列中的空白项。
例如:
2,4,8,……,2^n,……
1/2,2/3,3/4,……,n/n+1,……
1/2,1/4,1/8,……,1/2^n,……
在上面列举的数列中,都有规律可循。第1个数列的规律是数列第n项的值是2^n;第2个数列的规律是数列第n项的值是n/n+1;第3个数列的规律是数列第n项的值是1/2^n。
数列的第n项是指任何一个正整数n与数列的对应项,例如:正整数1对应着数列的第1项,正整数2对应着数列的第2项,……,正整数n对应着数列的第n项。
数列的规律称为数列的一般项,也称为数列的通项,数列简记为{Xn}。
数列{Xn}可看作自变量为正整数n的函数Xn=f(n),函数的定义域是全体正整数,当自变量n依次取1,2,3,……等正整数时,对应的函数值就排列成数列{Xn}。
例1 绘制一般项为n/n+1的数列图像
案例代码见课程资源(unit1/case16.py)
import numpy as np
import matplotlib.pyplot as plt
# 获取数列n/n+1数据
def get_sequence_data():
# 创建200个数据点
data = np.linspace(1,200,200)
# x数据为data
x = data
# y数据由数列一般项给出
y = data/(data+1)
return (x,y)
# 获取数列渐进线
def get_line_data():
# 创建200个数据点
data = np.linspace(1,200,200)
# x数据为data
x = data
# y数据为data/data
y = data/data
return (x,y)
# 程序入口
if __name__ == '__main__':
# 获取数列数据
x,y = get_sequence_data()
# 绘制数列
plt.plot(x,y,color='r',linestyle='-')
# 获取数列渐近线数据
x1,y1 = get_line_data()
# 绘制渐近线
plt.plot(x1,y1,color='b',linestyle='-')
plt.show()
观察数列n/n+1的图像,当n无限增大时,对应的数列第n项的值无限接近于1,读者可以修改程序,让n逐渐增大,观察数列对应的第n项的值是否无限接近于1,若数列第n项的值无限接近于1,可以初步认为1是该数列的极限。下面例3计算数列n/n+1的极限,验证1是否是该数列的极限。
例3 计算数列n/n+1的极限
案例代码见课程资源(unit1/case17.py)
# 导入sympy库
import sympy as sym
# 定义数学符号n,n为数列的自变量
n = sym.symbols('n')
# 定义函数,描述数列一般项公式n/(n+1)
def sequence():
return n/(n+1)
f = sequence()
# 计算数列的极限
# sym.oo表示趋向于无穷大
y = sym.limit(f,n,sym.oo)
print(y)
执行例3的程序,数列n/n+1的极限为1,数列收敛于1。
例4 绘制一般项为(-1)^(n-1)的数列图像
案例代码见课程资源(unit1/case18.py)
import numpy as np
import matplotlib.pyplot as plt
# 获取数列n/n+1数据
def get_sequence_data():
# 创建200个数据点
data = np.linspace(1,30,30)
# x数据为data
x = data
# y数据由数列一般项给出
# y = data/(data+1)
y = (-1)**(data+1)
return (x,y)
# 获取数列渐进线
def get_line_data():
# 创建200个数据点
data = np.linspace(1,30,30)
# x数据为data
x = data
# y数据为data/data
y = data/data
return (x,y)
# 程序入口
if __name__ == '__main__':
# 获取数列数据
x,y = get_sequence_data()
# 绘制数列
plt.plot(x,y,color='r',linestyle='-')
# 获取数列渐近线数据
x1,y1 = get_line_data()
# 绘制渐近线
plt.plot(x1,y1,color='b',linestyle='-')
plt.show()

观察数列(-1)^(n-1)的图像,无论n如何变化,对应的数列第n项的值总是为1或-1,该数列振荡无极限,数列发散。