ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:19.47KB ,
资源ID:12787604      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12787604.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Matlab实验三复习资料.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Matlab实验三复习资料.docx

1、Matlab实验三复习资料实验三 MATLAB语言的程序设计 一、实验目的: 1、熟悉MATLAB程序编辑与设计环境2、掌握各种编程语句语法规则及程序设计方法 3、函数文件的编写和设计 4、了解和熟悉跨空间变量传递和赋值 二、实验基本知识:1、程序流程控制语句 for循环结构语法:for i初值:增量:终值 语句1 语句n end 说明:1i初值:终值,则增量为1。 2初值、增量、终值可正可负,可以是整数,也可以是小数,只须符合数学逻辑。while 循环结构 语法:while 逻辑表达式 循环体语句 end 说明:1、whiIe结构依据逻辑表达式的值判断是否执行循环体语勾。若表达式的值为真,执

2、行循环体语句一次、在反复执行时,每次都要进行判断。若表达式的值为假,则程序执行end之后的语句。2、为了避免因逻辑上的失误,而陷入死循环,建议在循环体语句的适当位置加break语句、以便程序能正常执行。(执行循环体的次数不确定;每一次执行循环体后,一定会改变while后面所跟关系式的值。)3、while循环也可以嵌套、其结构如下: while逻辑表达式1 循环体语句1 while逻辑表达式2循环体语句2 end 循环体语句3 end if-else-end分支结构if 表达式 1 语句1 else if 表达式 2(可选) 语句2 else(可选) 语句3 end end 说明:1.if结构是

3、一个条件分支语句,若满足表达式的条件,则往下执行;若不满足,则跳出if结构。2else if表达式2与else为可选项,这两条语句可依据具体情况取舍。3注意:每一个if都对应一个end,即有几个if,记就应有几个end。switch-case结构语法:switch表达式case常量表达式1 语句组1 case常量表达式2 语句组2 otherwise 语句组n end 说明:1switch后面的表达式可以是任何类型,如数字、字符串等。2当表达式的值与case后面常量表达式的值相等时,就执行这个case后面的语句组如果所有的常量表达式的值都与这个表达式的值不相等时,则执行otherwise后的执

4、行语句。程序流程控制指令break、return、pause 2、函数文件的结构和编写方法 函数只能在函数体内对变量进行操作,也就是只能访问函数本身工作空间中的变量。 M函数文件的结构(1) 函数定义行(function) (2) H1行(函数帮助文本的第一行) (3) 函数帮助文本(4) 函数体(5) 注释函数文件编写后,保存时,其文件名必须与函数名相同。注意:函数名不要与MATLAB自身的函数命令相同。三、实验内容:2、用for循环语句实现求1100的和编程: sum=0;for i=1:100 sum=sum+i;endsum运行结果: ljiasum = 50503、用for循环语句实

5、现编写一个求阶乘的函数文件。编程:function y=jcheng(n)y=1;for i=1:n y=y*i;endy运行结果:假设n=5 jcheng(5)y = 120ans = 1204、找到一个n! 10100的值(利用上题的阶乘函数文件)编程:i=1;while(1) y=jcheng(i); if y10100 break; end i=i+1;endi运行结果: zhaony = 1y = 2y = 6y = 24y = 120y = 720y = 5040y = 40320y = 362880y = 3628800y = 39916800y = 479001600y = 6

6、.2270e+009y = 8.7178e+010y = 1.3077e+012y = 2.0923e+013y = 3.5569e+014y = 6.4024e+015y = 1.2165e+017y = 2.4329e+018y = 5.1091e+019y = 1.1240e+021y = 2.5852e+022y = 6.2045e+023y = 1.5511e+025y = 4.0329e+026y = 1.0889e+028y = 3.0489e+029y = 8.8418e+030y = 2.6525e+032y = 8.2228e+033y = 2.6313e+035y = 8

7、.6833e+036y = 2.9523e+038y = 1.0333e+040y = 3.7199e+041y = 1.3764e+043y = 5.2302e+044y = 2.0398e+046y = 8.1592e+047y = 3.3453e+049y = 1.4050e+051y = 6.0415e+052y = 2.6583e+054y = 1.1962e+056y = 5.5026e+057y = 2.5862e+059y = 1.2414e+061y = 6.0828e+062y = 3.0414e+064y = 1.5511e+066y = 8.0658e+067y = 4

8、.2749e+069y = 2.3084e+071y = 1.2696e+073y = 7.1100e+074y = 4.0527e+076y = 2.3506e+078y = 1.3868e+080y = 8.3210e+081y = 5.0758e+083y = 3.1470e+085y = 1.9826e+087y = 1.2689e+089y = 8.2477e+090y = 5.4434e+092y = 3.6471e+094y = 2.4800e+096y = 1.7112e+098y = 1.1979e+100i = 705、编写一个乘法表(99)编程:for i=1:9 A=;

9、 for j=1:i; A=A,sprintf(%dx%d=%d ,j,i,i*j); end disp(A)end运行结果: cfb1x1=1 1x2=2 2x2=4 1x3=3 2x3=6 3x3=9 1x4=4 2x4=8 3x4=12 4x4=16 1x5=5 2x5=10 3x5=15 4x5=20 5x5=25 1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56

10、8x8=64 1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=816、判断y向量的元素属于3n、3n+1或3n +2,设y = 3,5, 7, 9, 11,16。编程:假设:将3n放进数组A,将3n+1放进数组B,将3n+2放进数组C。y=3 5 7 9 11 16;A=;B=;C=;j=1;k=1;m=1;for i=1:6 x=rem(y(i),3); if x=0 A(j)=y(i);j=j+1; end if x=1 B(k)=y(i);k=k+1; end if x=2 C(m)=y(i);m=m+1; enden

11、ddisp(A)disp(B)disp(C)运行结果: yush 3 9 7 16 5 117、已知一维数组A=2,4,5,8,10、B=4, 9,6, 7, 4,用for循环语句实现。求和函数可用sum().编程:A=2 4 5 8 10;B=4 9 6 7 4;C=;y=0;for i=1:5 C(i)=(A(i)*B(5-i+1); y=y+C(i);endy运行结果: timu7y = 1788、(1)编写求解一维数组平均值的函数文件。(2)编写求解二维数组平均值的函数文件。编程1:function y=ywjz(A)x=0;n=numel(A);for i=1:n x=x+A(i);

12、endv=x/n;运行结果: y=ywjz(1 2 3 4 5)y= 3编程2:function y=ewjz(A)x=0;n=numel(A);for i=1:n x=x+A(i);endy=x/n;运行结果: y=ewjz(2 3;4 5;6 7;)y =4.5000调用验证:A=1 3 3;5 5 7;y=ewjz(A);y aay = 49、编写验证魔方矩阵的函数文件,输出要求如下: (1) 如果输入矩阵的维数小于3,输出显示error (2) 如果输入矩阵的不是方阵,输出显示the size of matrix X must be N-by-N matrix (3) 显示行、列和及其对角线求和后的值,并判断其和是否相同,若不同,显示No,相同显示Yes编程:function yanzh(x)r,c=size(x);if r=c disp(the size of matrix X must be N-by-N matrix)else if r yanzh(8 1 6;3 5 7;4 9 2;)yes yanzh(8 1 6;3 5 7;)the size of matrix X must be N-by-N matrixno yanzh(8 6;3 5;)eroorno yanzh(8 2 6;3 5 7;4 9 2;)no

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1