用matlab编程计算数列anan是有m个数的数列,a1=0,超出的为零(a(m+1)=0)a1+a3-2*a2=5a2+a4-2*a3=5.a(m-1)+a(m+1)-2*am=5后面a(m+2)就不能用了,可以编程算出an吗?
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/29 02:37:11
![用matlab编程计算数列anan是有m个数的数列,a1=0,超出的为零(a(m+1)=0)a1+a3-2*a2=5a2+a4-2*a3=5.a(m-1)+a(m+1)-2*am=5后面a(m+2)就不能用了,可以编程算出an吗?](/uploads/image/z/1843199-71-9.jpg?t=%E7%94%A8matlab%E7%BC%96%E7%A8%8B%E8%AE%A1%E7%AE%97%E6%95%B0%E5%88%97anan%E6%98%AF%E6%9C%89m%E4%B8%AA%E6%95%B0%E7%9A%84%E6%95%B0%E5%88%97%2Ca1%3D0%2C%E8%B6%85%E5%87%BA%E7%9A%84%E4%B8%BA%E9%9B%B6%EF%BC%88a%28m%2B1%29%3D0%EF%BC%89a1%2Ba3-2%2Aa2%3D5a2%2Ba4-2%2Aa3%3D5.a%28m-1%29%2Ba%28m%2B1%29-2%2Aam%3D5%E5%90%8E%E9%9D%A2a%28m%2B2%29%E5%B0%B1%E4%B8%8D%E8%83%BD%E7%94%A8%E4%BA%86%2C%E5%8F%AF%E4%BB%A5%E7%BC%96%E7%A8%8B%E7%AE%97%E5%87%BAan%E5%90%97%3F)
用matlab编程计算数列anan是有m个数的数列,a1=0,超出的为零(a(m+1)=0)a1+a3-2*a2=5a2+a4-2*a3=5.a(m-1)+a(m+1)-2*am=5后面a(m+2)就不能用了,可以编程算出an吗?
用matlab编程计算数列an
an是有m个数的数列,a1=0,超出的为零(a(m+1)=0)
a1+a3-2*a2=5
a2+a4-2*a3=5
.
a(m-1)+a(m+1)-2*am=5
后面a(m+2)就不能用了,可以编程算出an吗?
用matlab编程计算数列anan是有m个数的数列,a1=0,超出的为零(a(m+1)=0)a1+a3-2*a2=5a2+a4-2*a3=5.a(m-1)+a(m+1)-2*am=5后面a(m+2)就不能用了,可以编程算出an吗?
可以,先将每个式子左边中的ai按照从小到大排序,比如a1+a3-2*a2=5写成a1-2*a2+a3=5,每个式子都如此处理,以ai作为未知数来求A*a=b,其中A为n-1行n+1列的矩阵,b为n-1行1列矩阵
比如取n=10(当n取其他数时将10改为其他数即可),以下为程序代码
n=10;
A=zeros(n-1,n+1);
for i= 1:n-1
A(i,i)=1;A(i,i+1)=-2;A(i,i+2)=1;
end
A(1,1)=0;A(n-1,n+1)=0;
b=ones(n-1,1)*5;
a=A\b
an=a(n)
得到的结果为
a =
0
-22.5000
-40.0000
-52.5000
-60.0000
-62.5000
-60.0000
-52.5000
-40.0000
-22.5000
0
an =
-22.5000
其中a的每一行代表一个ai(a1到an+1),a(n)即为要求的an