MATLAB第五章作业.doc_第1页
MATLAB第五章作业.doc_第2页
MATLAB第五章作业.doc_第3页
MATLAB第五章作业.doc_第4页
MATLAB第五章作业.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章作业1.选择题(1)if结构的开始是“if”命令,结束是C命令。A. End if B. end C. End D. else(2)下面的switch结构,正确的是C。A. switch acase a1B. switch acase a=1C. switch acase 1D. switch acase =1(3)运行以下命令:a=eye(5);for n=a(2:end,:)则for循环的循环次数是B。A. 5B. 4C. 3D. 1(4)运行以下命令,则for循环的循环次数是C。x=0:10;for n=xif n=5continueendendA. 10B. 5C. 11D. 10(5)运行以下命令则B。a=1 2 3keyboardKa=1 2 4;KreturnA. a=1 2 3B. a=1 2 4C. 命令窗口的提示符为“K”D. 出错(6)关于主函数,以下说法正确的是D。A. 主函数名必须与文件名相同B. 主函数的工作空间与子函数的工作空间是嵌套的C. 主函数中不能定义其他函数D. 每个函数文件中都必须有主函数(7)当在命令窗口中输入“sin(a)”时,则对“a”的搜索顺序是D。A. 是否内部函数是否变量是否私有函数B. 是否内部函数是否搜索路径中函数是否私有函数C. 是否内部函数是否搜索路径中函数是否当前路径中函数D. 是否变量是否私有函数是否当前路径中函数2.求分段函数的值。用if语句实现,分别输出x-5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。解:首先编写分段函数的函数m文件:function y=myfun(x)if x=2|abs(x)=3|x=5y=x2-x-1;elseif x=5).*(x.2-x-1)y2=(x=0&x5&x=2&x=3).*(x.2-5*x+6);y=y1+y2+y3;x;y y1 = 0 11 0 1 0 5 19ans = -5.0000 -3.0000 1.0000 2.0000 2.5000 3.0000 5.0000 14.0000 11.0000 2.0000 1.0000 -0.2500 5.0000 19.0000 当然,本题主要是考查if结构的应用。3.输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分100分为A,80分89分为B,70分79分为C,60分69分为D,60分以下为E。要求:(1)分别用if语句和switch语句实现。(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。解:第一种方法:用if结构实现。编程如下:x=input(输入一个百分制成绩(0100):);if x100error(成绩输入错误!);elseif x60disp(你的成绩为E);elseif x70disp(你的成绩为D);elseif x80disp(你的成绩为C);elseif x90disp(你的成绩为B);elsedisp(你的成绩为A);end 第二种方法:用switch结构实现。编程如下:x=input(输入一个百分制成绩(0100):);xd=fix(x/10);switch xdcase 0,1,2,3,4,5disp(你的成绩为E);case 6disp(你的成绩为D);case 7disp(你的成绩为C);case 8disp(你的成绩为B);case 9,10disp(你的成绩为A);otherwiseerror(成绩输入错误!);end 注:此题建议编写两个M脚本文件,然后在MATLAB命令窗口运行。如果在Notebook中直接运行input指令会产生错误。4.根据,求的近似值。当n分别取100、1000、10000时,结果是多少?要求:分别用循环结构和向量运算(使用sum函数)来实现。解:第一种方法:使用循环结构。编程如下:s=0;for n=1:100s=s+1/n2;endpai=sqrt(6*s) pai = 3.1321 s=0;for n=1:1000s=s+1/n2;endpai=sqrt(6*s) pai = 3.1406 s=0;for n=1:10000s=s+1/n2;endpai=sqrt(6*s) pai = 3.1415 第二种方法:使用向量运算。编程如下:n=1:100;s=sum(1./n.2);pai=sqrt(6*s) pai = 3.1321 n=1:1000;s=sum(1./n.2);pai=sqrt(6*s) pai = 3.1406 n=1:10000;s=sum(1./n.2);pai=sqrt(6*s) pai = 3.1415 5.若两个连续自然数的乘积减1是素数,则称这两个连续自然数是亲密数对。该素数是亲密素数。例如23-15,由于5是素数,所以2和3是亲密数对,5是亲密素数。求2,50区间内: (1)亲密数对的对数。(2)与上述亲密数对对应的所有亲密素数之和。提示:在MATLAB中,判断一个正整数是否为素数的函数为isprime(n)。解:首先编写判断亲密数的函数:function flag,k=qms(n)k1=n*(n+1)-1;if isprime(k1) flag=1; k=n,n+1,k1;else flag=0; k=;end 然后计算亲密数对的对数和所有亲密素数的和:clearclck=;for n=2:50 flag,k1=qms(n); k=k;k1;endkS=size(k);disp(亲密数对的对数为 num2str(S(1)SUM=sum(k(:,3);disp(所有亲密素数的和为 num2str(SUM) k = 2 3 5 3 4 11 4 5 19 5 6 29 6 7 41 8 9 71 9 10 89 10 11 109 11 12 131 13 14 181 15 16 239 16 17 271 19 20 379 20 21 419 21 22 461 24 25 599 26 27 701 28 29 811 30 31 929 31 32 991 35 36 1259 38 39 1481 39 40 1559 41 42 1721 44 45 1979 45 46 2069 46 47 2161 48 49 2351 50 51 2549亲密数对的对数为29所有亲密素数的和为23615 6.编写M函数文件,输入参数为t和,计算函数的值并将变量t和y放在同一矩阵z的两行中,输出参数为z。解:函数文件为:function z=mysin(t,w)%MYSIN%计算不同频率、不同时刻的正弦函数值%输入参数:%t:时刻,取值可以为标量或向量%w:频率,取值为标量,缺省为1时可以省略%输出参数:%z:两行数组,第一行存放不同时刻t值,第二行存放对应的正弦函数值%调用格式:%z=mysin(t):计算函数y=sin(t)的值%z=mysin(t,w):计算函数y=sin(w*t)的值%湖北工业大学左惟炜编写%2011-01-20if nargin2error(输入参数个数错误!);endswitch nargincase 1w=1;endy=sin(w*t);z=t;y; 运行过程如下:t=0:0.1*pi:2*pi;w=1.5;z1=mysin(t)z2=mysin(t,w) z1 = Columns 1 through 9 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 0 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 Columns 10 through 18 2.8274 3.1416 3.4558 3.7699 4.0841 4.3982 4.7124 5.0265 5.3407 0.3090 0.0000 -0.3090 -0.5878 -0.8090 -0.9511 -1.0000 -0.9511 -0.8090 Columns 19 through 21 5.6549 5.9690 6.2832 -0.5878 -0.3090 -0.0000z2 = Columns 1 through 9 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 0 0.4540 0.8090 0.9877 0.9511 0.7071 0.3090 -0.1564 -0.5878 Columns 10 through 18 2.8274 3.1416 3.4558 3.7699 4.0841 4.3982 4.7124 5.0265 5.3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论