当前位置:文档之家› 实验二 Matlab程序设计(答案)

实验二 Matlab程序设计(答案)

பைடு நூலகம்
-0.0000 -2.7143 2.4286 ans = 0.4873 0.3671 -0.1076 ans = 24 -7 -8 ans = 4 -2 2 -3 0 5 2 31 13
7.已知多项式f(x),g(x)求: (1)f(x)的根;
(2)g(x)在闭区间[-1,2]上的最小值(3)f(x)+g(x),f(x)*g(x),f(x)/g(x)(4)f(x)的导 数。
1 2!
5. 用循环语句编写函数 M 文件计算 e^x 的值, 其中 x ,n 为输入变量 (本实验取 x=1,n=100) , 的近似值可用下式表示:e������ ≈ 1 + ������ + San5.m文件:function y=san5(x) y=1;a=1; for n=1:100 a=a*n;
>> syms x >> f=3*x^5-x^4+2*x^3+x^2+3; >> g=1/3*x^3+x^2-3*x-1; >> digits(5) >> solve(f) ans = -0.89518 0.7416*i + 0.73304 - 1.0066*i - 0.11879 1.0066*i - 0.11879 0.73304 - 0.7416*i h=diff(g) h =x^2 + 2*x - 3 >> solve(h) ans =-3 故为1 >> f+g ans =3*x^5 - x^4 + (7*x^3)/3 + 2*x^2 - 3*x + 2 >> f*g ans =-(- x^3/3 - x^2 + 3*x + 1)*(3*x^5 - x^4 + 2*x^3 + x^2 + 3) >> f/g ans =-(3*x^5 - x^4 + 2*x^3 + x^2 + 3)/(- x^3/3 - x^2 + 3*x + 1) >> d=diff(f) d =15*x^4 - 4*x^3 + 6*x^2 + 2*x 1
������ 2 + ⋯
1 ������!
������ ������.
b=x^n/a; y=y+b; end 程序:san5(1) ans = 2.7183 6. (1)a=[4 -2 2;-3 0 5;1 5 3]; >> b=[1 3 4; -2 0 -3;2 -1 1]; >> det(a) ans = -158 (2)2*a-b,a*b,a.*b,a*inv(b),inv(a)*b,a^2,a' ans = 7 -4 0 ans = 12 7 -3 ans = 4 6 2 ans = 10 -14 0 -6 0 -5 24 -7 -8 8 -15 3 -0.0000 -8.0000 3.0000 0.4114 -0.4304 0.2468 4 9 36 1 5 3 2.0000 -8.1429 2.2857 1.0000 0.0000 0.0000 -7 0 11 0 13 5
实验二 Matlab 程序设计
1. 编写程序,计算 1+3+5+7+…+(2n+1) 的值(用 input 语句输入 n 值) 。 san1.m文件: n=input('n=');sum=0; for i=1:2:2*n+1 sum=sum+i; end sum 2. 编写分段函数f(x)的函数文件,存放于文件ff.m中,计算出f(-3),f(sqrt(2)),f( ∞)的值。 ff.m文件: function y=ff(x) if (x>=0)&&(x<1) y=x; elseif (x>=1)&&(x<=2) y=2-x; else y=0; end 3. 利用矩阵的初等变换及函数rank、函数inv求下列矩阵的秩: >> a=[1 -6 3 2;3 -5 4 0;-1 -11 2 4]; rank(a) ans = 3 4. 计算 (1)>> syms t a=[cos(t) -sin(t);sin(t) cos(t)]; a=det(eval(a^5)); simplify(a) ans = 1 (2)b=[1 2 1 0;6 2 4 1;0 2 1 0;3 1 4 1]; inv(b) ans = 1.0000 -3.0000 6.0000 -24.0000 0 1.0000 -2.0000 7.0000 -1.0000 3.0000 -5.0000 20.0000 0 -1.0000 2.0000 -6.0000
相关主题