matlab课后习题与答案(共13页).doc

上传人:飞****2 文档编号:14429080 上传时间:2022-05-04 格式:DOC 页数:13 大小:129.50KB
返回 下载 相关 举报
matlab课后习题与答案(共13页).doc_第1页
第1页 / 共13页
matlab课后习题与答案(共13页).doc_第2页
第2页 / 共13页
点击查看更多>>
资源描述

《matlab课后习题与答案(共13页).doc》由会员分享,可在线阅读,更多相关《matlab课后习题与答案(共13页).doc(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上习题二1. 如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。因此,矩阵是MATLAB最基本、最重要的数据对象。2. 设A和B是两个同维同大小的矩阵,问:(1) A*B和A.*B的值是否相等?答:不相等。(2) A./B和B.A的值是否相等?答:相等。(3) A/B和BA的值是否相等?答:不相等。(4) A/B和BA所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而BA等效于B矩阵的逆左乘A矩阵,即inv(B

2、)*A。3. 写出完成下列操作的命令。(1) 将矩阵A第25行中第1, 3, 5列元素赋给矩阵B。答:B=A(2:5,1:2:5); 或B=A(2:5,1 3 5)(2) 删除矩阵A的第7号元素。答:A(7)=(3) 将矩阵A的每个元素值加30。答:A=A+30;(4) 求矩阵A的大小和维数。答:size(A);ndims(A);(5) 将向量 t 的0元素用机器零来代替。答:t(find(t=0)=eps;(6) 将含有12个元素的向量 x 转换成矩阵。答:reshape(x,3,4);(7) 求一个字符串的ASCII码。答:abs(123); 或double(123);(8) 求一个ASC

3、II码所对应的字符。答:char(49);4. 下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;.L1=A=B;L2=A3&A3&A7);答:L1的值为0, 0, 0, 0, 1, 0, 0, 0, 0L2的值为1, 1, 1, 1, 1, 0, 0, 0, 0L3的值为0, 0, 0, 1, 1, 1, 0, 0, 0L4的值为4, 5, 65. 已知完成下列操作:(1) 取出A的前3行构成矩阵B,前两列构成矩阵C,右下角子矩阵构成矩阵D,B与C的乘积构成矩阵E。答:B=A(1:3,:);C=A(:,1:2);D=A(2:4,3:4);E=B*C;(2) 分别

4、求E=10&A25)。答:E=10&A=0.5 & x=1.5 & x=3.5 & x5.5y=log(abs(b+c/x);enddisp(y=,num2str(y);(2) 用switch语句实现计算:a=input(请输入a的值:);b=input(请输入b的值:);c=input(请输入c的值:);x=input(请输入x的值:);switch fix(x/0.5) case 1,2 y=a*x2+b*x+c; case num2cell(3:6) y=a*(sin(b)c)+x; case num2cell(7:10) y=log(abs(b+c/x); enddisp(y=,num

5、2str(y);3. 产生20个两位随机整数,输出其中小于平均值的偶数。答:A=fix(10+89*rand(1,20);sum=0;for i=1:20sum=sum+A(i);endB=A(find(A v_maxv_max=x;end;if x v_minv_min=x;end;enddisp(最大数为:, num2str(v_max);disp(最小数为:, num2str(v_min);(2) 用max函数、min函数实现:for i=1:5A(i)=input(请输入第, num2str(i), 数:);enddisp(最大数为:, num2str(max(A);disp(最小数为

6、:, num2str(min(A);5. 已知:,分别用循环结构和调用MATLAB的sum函数求s的值。答:(1) 用循环结构实现:s=0;for i=0:63 s=s+2i;ends(2) 调用sum函数实现:s=0:63;s=2.s;sum(s)6. 当n分别取100、1000、10000时,求下列各式的值。(1) (2) (3) (4) 要求分别用循环结构和向量运算(使用sum或prod函数)来实现。答:(1) 用循环结构实现:sum=0;for k=1:100sum=sum+(-1)(k+1)/k;endsum使用sum函数:x=;for k=1:10000x=x, (-1)(k+1)

7、/k;endsum(x)(2) 用循环结构实现:sum=0;for k=1:100sum=sum+(-1)(k+1)/(2*k-1);endsum使用sum函数:x=;for k=1:100x=x, (-1)(k+1)/(2*k-1);endsum(x)(3) 用循环结构实现:sum=0;for k=1:100sum=sum+1/(4k);endsum使用sum函数实现:x=;for k=1:100x=x, 1/(4k);endsum(x)(4) 用循环结构实现:t=1;for k=1:100t=t*(2*k)*(2*k)/(2*k-1)*(2*k+1);endt使用prod函数实现:x=;f

8、or k=1:100x=x, (2*k)*(2*k)/(2*k-1)*(2*k+1);endprod(x)7. 编写一个函数文件,求小于任意自然数n的斐波那契(Fibnacci)数列各项。斐波那契数列定义如下:答:function x=fibnacci(n)for i=1:n if i=2 x(i)=1; else x(i)=x(i-1)+x(i-2); endend8. 编写一个函数文件,用于求两个矩阵的乘积和点乘,然后在命令文件中调用该函数。答:函数文件myfnc.m:function x, y= myfnc(A, B)tryx=A*B;catchx=;endy=A.*B;命令文件myex

9、e.m:A=input(请输入矩阵A:);B=input(请输入矩阵B:);x, y=myfnc(A, B);if length(x)=0 display(两矩阵的维数不匹配,无法进行乘积运算!);else disp(矩阵A和矩阵B的乘积为:); xenddisp(矩阵A和矩阵B的点乘为:);y9. 先用函数的递归调用定义一个函数文件求,然后调用该函数文件求。答:函数文件myfnc.m:function sum=myfnc(n, m)if n=1sum=1;elsesum= myfnc (n-1, m)+nm;end在命令窗口中调用myfnc.m文件,计算:sum=myfnc(100, 1)+

10、 myfnc(50, 2)+myfnc(10,-1)10. 写出下列程序的输出结果。 s=0;a=12,13,14;15,16,17;18,19,20;21,22,23;for k=afor j=1:4if rem(k(j),2)=0s=s+k(j);endendend s答:执行结果为s=108 命令文件exe.m执行后的结果为:x = 41220 y=2 4 6欢迎您的光临,word文档下载后可以修改编辑。双击可以删除页眉页脚。谢谢!单纯的课本内容,并不能满足学生的需要,通过补充,达到内容的完善 教育之通病是教用脑的人不用手,不教用手的人用脑,所以一无所能。教育革命的对策是手脑联盟,结果是手与脑的力量都可以大到不可思议。专心-专注-专业

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁