欢迎来到天天文库
浏览记录
ID:58676559
大小:379.00 KB
页数:20页
时间:2020-10-15
《MATLAB)课后实验答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一MATLAB运算基础1.先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。(1)(2),其中(3)(4),其中t=0:0.5:2.5解:M文件:z1=2*sin(85*pi/180)/(1+exp(2))x=[21+2*i;-.455];z2=1/2*log(x+sqrt(1+x^2))a=-3.0:0.1:3.0;z3=(exp(0.3.*a)-exp(-0.3.*a))./2.*sin(a+0.3)+log((0.3+a)./2)t=0:0.5:2.5;z4=(t>=0&t<1
2、).*(t.^2)+(t>=1&t<2).*(t.^2-1)+(t>=2&t<3).*(t.^2-2*t+1)4.完成下列操作:(1)求[100,999]之间能被21整除的数的个数。(2)建立一个字符串向量,删除其中的大写字母。解:(1)结果:m=100:999;n=find(mod(m,21)==0);length(n)ans=43(2).建立一个字符串向量例如:ch='ABC123d4e56Fg9';则要求结果是:ch='ABC123d4e56Fg9';k=find(ch>='A'&ch<='Z');ch(
3、k)=[]ch=123d4e56g9实验二MATLAB矩阵分析与处理1.设有分块矩阵,其中E、R、O、S分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证。解:M文件如下;5.下面是一个线性方程组:(1)求方程的解。(2)将方程右边向量元素b3改为0.53再求解,并比较b3的变化和解的相对变化。(3)计算系数矩阵A的条件数并分析结论。解:M文件如下:实验三选择结构程序设计1.求分段函数的值。用if语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。解:M文件如下:
4、2.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89分为B,79分~79分为C,60分~69分为D,60分以下为E。要求:(1)分别用if语句和switch语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。解:M文件如下3.硅谷公司员工的工资计算方法如下:(1)工作时数超过120小时者,超过部分加发15%。(2)工作时数低于60小时者,扣发700元。(3)其余按每小时84元计发。试编程按输入的工号和该号员工的工时数,计算应发工资。解
5、:M文件下实验四循环结构程序设计1.根据,求π的近似值。当n分别取100、1000、10000时,结果是多少?要求:分别用循环结构和向量运算(使用sum函数)来实现。解:M文件如下:运行结果如下:2.根据,求:(1)y<3时的最大n值。(2)与(1)的n值对应的y值。解:M—文件如下:3.考虑以下迭代公式:其中a、b为正的学数。(1)编写程序求迭代的结果,迭代的终止条件为
6、xn+1-xn
7、≤10-5,迭代初值x0=1.0,迭代次数不超过500次。(2)如果迭代过程收敛于r,那么r的准确值是,当(a,b)的值取(
8、1,1)、(8,3)、(10,0.1)时,分别对迭代结果和准确值进行比较。解:M文件如下:运算结果如下;5.若两个连续自然数的乘积减1是素数,则称这两个边疆自然数是亲密数对,该素数是亲密素数。例如,2×3-1=5,由于5是素数,所以2和3是亲密数,5是亲密素数。求[2,50]区间内:(1)亲密数对的对数。(2)与上述亲密数对对应的所有亲密素数之和。解:M文件:实验五函数文件4.设,编写一个MATLAB函数文件fx.m,使得调用f(x)时,x可用矩阵代入,得出的f(x)为同阶矩阵。解:函数fx.m文件:funct
9、ionf=fx(x)%fxfx求算x矩阵下的f(x)的函数值A=0.1+(x-2).^2;B=0.01+(x-3).^4;f=1./A+1./B;命令文件:clc;x=input('输入矩阵x=');f=fx(x)运算结果:5.已知(1)当f(n)=n+10ln(n2+5)时,求y的值。(2)当f(n)=1×2+2×3+3×4+...+n×(n+1)时,求y的值。解:(1)函数f.m文件:functionf=f(x)f=x+10*log(x^2+5);命令文件:clc;n1=input('n1=');n2=in
10、put('n2=');n3=input('n3=');y1=f(n1);y2=f(n2);y3=f(n3);y=y1/(y2+y3)(2).函数g.m文件functions=g(n)fori=1:ng(i)=i*(i+1);ends=sum(g);命令文件:clc;n1=input('n1=');n2=input('n2=');n3=input('n3=');y1=g(n1);y2=g
此文档下载收益归作者所有