最新matlab第三章课后部分答案.docxVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
习题三 3-2从键盘输入一个三位整数,将它反向输出。如输入639,输出为936 程序如下: m=input(请输入一个三位整数:’); ml=fix(m/100);%求m的百位整数 m2=rem(fix(m/10)J0);%求 m 的十位数字 m3=rem(m,10);%求m的个位数字 m=m3? 100+m2*10+ml%反向输岀 m 3-3输入一个百分制成绩,要求输出成绩等级ABC.DE其中90-100分为A, 80-89分为 B, 70-79分为C. 60~69分为D, 60分以下为E。 要求:(1)分别用if语句和switch语句实现。 (2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输岀出错信息。 程序如下: if语句 c=input(请输入成绩:); if c=90cv=100 disp(A成绩合理); elseif c=80c=89 disp(B成绩合理); elseif c=70c=79 disp(C成绩合理); elseif c=60c=69 disp(D成绩合理); elseif c60 disp(E成绩合理); else disp(成绩错误); end switch 语句 c=input(,请输入成绩:’); switch fix(c) case num2cell(90:100) disp(A成绩合理); case nuni2cell(80:89) dispCB成绩合理*); case num2cell(70:79) dispCC成绩合理 case num2cell(60:69) disp(D成绩合理*); case num2cell(0:59) disp(E成绩合理); otherwise dispC成绩错误); end 3-4建立5紿矩阵,要求输出矩阵第N行元素。当N值超过矩阵的行数时,自动转为输出 矩阵最后一行元素,并给岀出错信息。 程序如下: clear all a=fix(rand(5,6)*89)+10; n=inputC请输入行数n (输出结果是5*6矩阵的元素):「); if n5ln0 b=a(5:5,:); disp([输入行数错误,程序输出最后一行:;num2str(b)]) else c=a(n:n/); disp(「输出结果为:\num2str(c)]) end 3-5产生20个两位随机整数,输出其中小于平均值的偶数。 程序如下: x=fix(rand( 1,20)*89)+10; xl=fix(sum(x)/20); disp(「平均数是:\num2str(xl)]) m=(rcm(x、2)==0xvx 1); n=find(m); disp『小于平均数的数是:;num2str(x(n))]); 3-6输入20个数,求其中最大数和最小数。要求分別用循环结构和调用MATLAB的max 函数、min函数来实现。 程序如下: 主函数 c=inputCiW输入 20 个数:) disp(,最大值是:) m=max(c) dispC最小值是:’) n=min(c) max函数 function m=max(a[]) m=a(l,20); for i=2:20 if ma(l,i) m=a(l,i) end end min函数 function n=min(a[]) m=a(l,20); for i=2:20 if na(l j) n=a(lj) end end 3-8当n分別取100、1000. 10000时,求下列各式的值: 1/1A2+1/2A2+1/3A2+ ? ? ? +l/nA2+ ? ? ? (=piA2/6) 程序如下: clear all n=l:100; b=l./(n.*n); c=sum(b); disp(「当 n 等于 100 时:\num2str(c)]) n=l:1000; b=l./(n.*n); c=sum(b); disp(「当 n 等于 1000 时:\num2str(c)]) n=l:10000; b=l./(n.*n); c=sum(b); disp(「当 n 等于 10000 时:\num2str(c)]) 结果:?当n等于100时:1.635 当n等于1000时:1.6439 当I】等于10000时:1.6448 1-1/3+1/5-1/7+ …(=pi/4) 程序如下: clear all n=l:100; b=l./(4.*n-3)-l./(4.*n-l); c=sum(b); disp(「当 n 等于 100 时:\num2str(c)]) n=l:1000; b=l./(4.*n-3)-l./(4.*n-l); c=sum(b); disp(「当 n 等于 1000 时:\num2str(c)]) n=l: 10000; b

文档评论(0)

yuxiufeng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档