第三章 matlab程序设第三章 matlab程序设计第三章 matlab程序设计第三章 matlab程序设计.ppt

第三章 matlab程序设第三章 matlab程序设计第三章 matlab程序设计第三章 matlab程序设计.ppt

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
for语句更一般的格式为: for 循环变量=矩阵表达式 循环体语句 end 执行过程是依次将矩阵的各行元素赋给循环变量,然后执行循环体语句,直至各列元素处理完毕。 3.2 程序控制结构 例 写出下列程序的执行结果。 s=0; a=[12,13,14;15,16,17;18,19,20;21,22,23]; for k=a s=s+k; end disp(s); 3.2 程序控制结构 2.while语句:while语句的执行过程为:若条件成立,则执行循环体语句,执行后再判断条件是否成立,如果不成立则跳出循环。一般格式为: while (条件) 循环体语句 end 3.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 3.2 程序控制结构 【例】Fibonacci数组的元素满足Fibonacci 规则: , ;且 现要求该数组中第一个大于10000的元素。 n=100; a=ones(1,n); for i=3:n a(i)=a(i-1)+a(i-2); if a(i)=10000 a(i) break end; end, i While循环和for循环区别: While循环结构的循环体被执行的次数不是确定的,而for结构中的循环体的执行次数是确定的。 一般情况下,表达式的值都是标量值,但是MATLAB允许它为一个数组,此时只有当该数组所有元素为真是,MATLAB才会执行循环体。 如while指令后的表达式为空数组,MATLAB认为表达式值为假,而不执行循环体。 例 分别用 for 和 while 循环结构编写程序,写出 并考虑一种避免循环的简洁方法来进行求和,并比较各种算法的运行时间。 tic sum=1; a=zeros(1,63); for i=1:63 a(i)=2^i; sum=sum+a(i); end disp(sum) toc tic i=1; sum=1; while i=63 a(i)=2^i; sum=sum+a(i); i=i+1; end i,sum toc 加快MALTAB程序执行速度的建议 尽量避免使用循环 多重循环情况下,外循环次数要少 大型矩阵要预先定维 优先考虑内在函数 采用有效的算法 3.break语句和continue语句:与循环结构相关的语句还有break语句和continue语句。它们一般与if语句配合使用。 break语句用于终止循环的执行。当在循环体内执行到该语句时,程序将跳出循环,继续执行循环语句的下一语句。 continue语句控制跳过循环体中的某些语句。当在循环体内执行到该语句时,程序将跳过循环体中所有剩下的语句,继续下一次循环。 3.2 程序控制结构 例 求[100,200]之间能被7整除的整数。 程序如下: 3.2 程序控制结构 for n=100:200 if rem(n,7)==0 n end end 第一个能被7整除的整数 for n=100:200 if rem(n,7)~=0 continue end break end n 4.循环的嵌套:如果一个循环结构的循环体又包括另一个循环结构,就称为循环的嵌套,或多重循环结构。 例 若一个数等于它的各个真因子之和,则称该数为完数,如6=1+2+3,所以6是完数。求[1,500]之间的全部完数。 3.2 程序控制结构 for m=1:500 s=0;

您可能关注的文档

文档评论(0)

cxiongxchunj + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档