- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 MATLAB法度模范设计弥补资料
程序设计补充材料
第一节 M文件1、M文件大量的Matlab代码(指令)罗列成文件,送MATLAB系统中解释运行。2、M文件的分类(1)命令式文件(脚本script)(2)函数式文件(function)3、两类文件的区别(1)命令式文件没有输出输入参量,函数式文件有(2)命令式文件运行中可以调用工作空间的数据,运行中产生的所有变量为全局变量。函数式文件不能调用工作空间的数据,运行中产生的所有变量为局部变量(3)命令式文件可以直接运行,函数式文件不能,只能调用4、函数式文件(function)的构成(1)函数定义行? Function[输出参量]=gauss(输入参量)(2)函数体完成函数的功能(3)函数说明(4)函数行注5、例子(funave1)(funave2)funave1:function[average]=funave(vectory);average=sum(sum(vectory))/length(vectory);funave2:(定义二维数组时输出的平均值)function[ave1,ave2]=funave2(vectory1,vectory2)if nargin=1??? ave1=sum(sum(vectory1))/length(vectory1);endif nargin=2??? ave1=sum(sum(vectory1))/length(vectory1);??? ave2=sum(sum(vectory2))/length(vectory2);end
第二节 程序的流程控制1.关系运算符== 等于 =小于等于 ~=不等于 =大于等于 小于 大于2.条件分支语句(if-else-end)如果-那么-否则(1)结构?If...else? if...else...end注意这一结构的条件优先问题(2)条件的嵌套。(exlin.m)exlin:function f=exlin(x)if x0??? f=0;elseif x1??? f=x;elseif x2??? f=2-x;else??? f=0end3.硬循环语句(for-end)(1)结构:for(循环变量)end。(2)exno49exno49:n=5;?? %每个for和if都必须对应一个endfor i=1:n??? for j=1:n??????? if i==j??????????? a(i,j)=2??????? else??????????? a(i,j)=0??????? end??? endenda%问:根据结果,如果要两条主对角线元素都为2,如何调用此过程答:加上一句if i==n 1-j a(i,j)=24.条件循环语句(while-end)当.....就.....(1)结构:while(表达式)end(2)例:求阶乘大于或等于9999的最小整数(exno50)exno50:n=1;while prod(1:n)99^99;? %prod()向量元素的乘积??? n=n 1endn5.分支循环语句(switch-case-otherwise-end)(1)结构:switch(开关量)(2)(exno51)exno51:a=input(a=?)switch a??? case 1??????? disp(It is raining)??? case 0??????? disp(It do not know)??? case -1??????? disp(It is not raining)??? otherwise??????? disp(It is raniing?)end???
第三节 程序的调试1.语法和逻辑两种错型2.根据出错信息调试命令窗的提示,注意一般情况不加;号调试3.设置断点来判断breakpoints4.利用keyboard命令来判断当出现k 时return5.变量的鼠标观测法6.代码运行的计时方法(1)整段程序代码的计时tic...toc 表示计算tic与toc之间的时间(exno57)(2)也可以用etime(t1,t2)来计算t1,t2之间的时间差来完成上述功能(exno58)(3)也可以用cputtime变量来完成上述功能(exno59)exno57:tica=rand(300);inv(a); %计算逆矩阵toc%注:程序中不需要显示结果的就不显示,可以节省时间
exno58:t0=clocka=rand(300);inv(a);%计算逆矩阵elapsed_time
文档评论(0)