- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
matlab函数及脚本文件入门 * * for适用已知到循环次数,而不知循环运算目标; while适用已知循环运算目标,而循环次数未知; 为了提高代码的运行效率,避免 for 循环的使用; 4.for和while循环语句区别 * * 计算级数:S=1+2+22+23+···+263= s=0; i=0; while i64 s=s+2^i; i=i+1; end s i s=0; i=0; for i=1:63 s=s+2^i; i=i+1; end s i 1 2 例 例 从键盘输入若干个数,当输入0时结束输入,求这些数的平均值和它们之和。 sum=0; cnt=0; val=input(Enter a number (end in 0):); while val~=0 sum=sum+val; cnt=cnt+1; val=input(Enter a number (end in 0):); end if cnt 0 sum mean=sum/cnt end 例 例 try 语句组1 catch 语句组2 end lasterr %显示出错原因 3.4.3 try-catch语句 Try 检测程序代码是否出错; 先试探语句组1,如出现错误,则将错误信息赋给lasterr保留; 并转去执行语句组2。 语句格式 矩阵乘法运算要求两矩阵维数相容,否则会出错。先求两矩阵的乘积,若出错,则自动转去求两矩阵的点乘。 A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12]; try C=A*B; catch C=A.*B; end C lasterr %显示出错原因 例 例 程序设计常遇到提前终止循环、跳出子程序、显示出错信息等情况,主要有break、continue、 keyboard 、 return、pause、 echo、error等。 3.4.4 其它程序控制语句 1. break 和 continue break和continue与循环结构for 和while相关语句,它们一般与if配合使用。 break 终止循环,即跳出最内层循环 ; continue结束本次循环,进行下次循环. 求[100,1000]之间第一个能被21整除的整数。 for n=100:1000 if rem(n,21)~=0 continue end break end n 例 例 Rem除法求余 停止运行,控制权给键盘,命令窗口“”变成“K”;。 对程序调试和程序运行中修改都很方便。 function abcdek(a,b) c=a+b; keyboard d=a*b e=a/b end function abcdef(a,b) c=a+b; d=a*b return e=a/b*d 2. keyboard 3. return abcdek(4,2) K a=2 a = 2 K return d = 4 e = 1 例 例 输入return后,控制权将交回文件 function abcde(a,b) c=a+b; d=a*b e=a/b end 4. 程序的暂停 pause pause 或 pause(n) 若想强行终止程序的运行,可以使用 Ctrl+c n 是延迟时间,以秒为单位; 缺省,将暂停程序,直到用户按任意键后继续 pause off 屏蔽程序中所有 pause 的作用 pause on 打开 pause 的作用 function abcdp (a,b) c=a+b d=sin(c) pause e=log(d) function abcd (a,b) c=a+b d=sin(c) e=log(d) abcd(3,4) c = 7 d = 0.6570 任意键 e = -0.4201 例 例 5. echo 在命令窗口显示执行过程的M文件的命令 * * function abcd(a,b) c=a+b d=sin(c) e=log(d)保存为abcd.m 在工作窗口中调用: a=2;b=[3,4,5,6]; abcd(a,b) a=2; b=3; c=a+b; d=sin(c) ; e=log(d) ; 保存为:abcd.m 在工作窗口中调用: abcd %文件名即可 函数文件 脚本文件 局部变量 全局变量 function e=abcdef(a,b) c=a+b d=sin(c) e=log(d)保存为abcd.m 在工作窗口中调用: a=2;
文档评论(0)