欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第03讲-MATLAB编程入门.pdf

    • 资源ID:70009862       资源大小:279.10KB        全文页数:21页
    • 资源格式: PDF        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第03讲-MATLAB编程入门.pdf

    MATLAB 编程入门MATLAB 编程入门 计算机程序就是计算机指令的集合,不同的编程语言,其指令与功能是不一样的.MATLAB 语言是一种面向对象的高级语言,它具有编程效率高、易学易用的优点.计算机程序就是计算机指令的集合,不同的编程语言,其指令与功能是不一样的.MATLAB 语言是一种面向对象的高级语言,它具有编程效率高、易学易用的优点.MATLAB 与其它大部分高级语言一样,有它自己的控制流语句.MATLAB提供如下几种控制流结构:MATLAB 与其它大部分高级语言一样,有它自己的控制流语句.MATLAB提供如下几种控制流结构:一、顺序结构 一、顺序结构 二、循环结构 二、循环结构 三、选择结构 三、选择结构 循环:循环:?For 循环 For 循环?While 循环 While 循环 选择:选择:?If-Else-End 结构 If-Else-End 结构?switch-case-end 结构 switch-case-end 结构 由于这些结构经常包含大量的 MATLAB 命令,故经常出现在 M 文件中.MATLAB支持的控制流语句和C语言支持的控制流语句在调用格式上非常相似.由于这些结构经常包含大量的 MATLAB 命令,故经常出现在 M 文件中.MATLAB支持的控制流语句和C语言支持的控制流语句在调用格式上非常相似.1.For 循环 1.For 循环 For 循环允许一条语句或一组语句被重复执行预先指定的次数。For循环的一般形式是:For 循环允许一条语句或一组语句被重复执行预先指定的次数。For循环的一般形式是:for x=array for x=array 语句 语句 end end 如如:for n=1:10:for n=1:10 x(n)=sin(n*pi/10);x(n)=sin(n*pi/10);end end x x x=x=0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 0.3090 0.0000 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 0.3090 0.0000 注意:注意:(1)For 循环不能用 For 循环内重新赋值循环变量 n 来终止;(1)For 循环不能用 For 循环内重新赋值循环变量 n 来终止;(2)在 For 循环内接受任何有效的 MATLAB 数组;(2)在 For 循环内接受任何有效的 MATLAB 数组;(3)For 循环可按需要进行循环嵌套。(3)For 循环可按需要进行循环嵌套。如:如:For n=1:5 For n=1:5 for m=1:5 for m=1:5 A(n,m)=n2+m2;A(n,m)=n2+m2;end end end end (4)当有一个等效的数组方法来解给定的问题时,应避免用 For 循环。例如,上面的第一个例子可被重写为 (4)当有一个等效的数组方法来解给定的问题时,应避免用 For 循环。例如,上面的第一个例子可被重写为 n=1:10;n=1:10;x=sin(n*pi/10)x=sin(n*pi/10)x=x=0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 0.3090 0.0000 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 0.5878 0.3090 0.0000 两种方法得出同样的结果,而后者执行更快,更直观,要求较少的输入。两种方法得出同样的结果,而后者执行更快,更直观,要求较少的输入。(5)为了得到最大的速度,在 For 循环(While 循环)被执行之前,应预先分配数组。例如,前面所考虑的第一种情况,在 For 循环内每执行一次命令,变量 x 的大小增加 1。迫使 MATLAB 每通过一次循环要花费时间对 x 分配更多的内存。为了消去这个步骤,For 循环的例子应重写为 (5)为了得到最大的速度,在 For 循环(While 循环)被执行之前,应预先分配数组。例如,前面所考虑的第一种情况,在 For 循环内每执行一次命令,变量 x 的大小增加 1。迫使 MATLAB 每通过一次循环要花费时间对 x 分配更多的内存。为了消去这个步骤,For 循环的例子应重写为 x=zeros(1,10);x=zeros(1,10);for n=1:10 for n=1:10 x(n)=sin(n*pi/10);x(n)=sin(n*pi/10);end end 现在,只有 x(n)的值需要改变。现在,只有 x(n)的值需要改变。例 1 相传古代印度国王要褒奖他的聪明能干的宰相达依尔(国际象棋发明者),问他要什么?达依尔回答:“陛下只要在国际象棋棋盘的第一个格子上放一粒麦子,第二个格子上放二粒麦子,以后每个格子的麦子数都按前一格的两倍计算。如果陛下按此法给我 64 格的麦子,就感激不尽,其他什么也不要了。”国王想:“这还不容易!”让人扛了一袋麦子,例 1 相传古代印度国王要褒奖他的聪明能干的宰相达依尔(国际象棋发明者),问他要什么?达依尔回答:“陛下只要在国际象棋棋盘的第一个格子上放一粒麦子,第二个格子上放二粒麦子,以后每个格子的麦子数都按前一格的两倍计算。如果陛下按此法给我 64 格的麦子,就感激不尽,其他什么也不要了。”国王想:“这还不容易!”让人扛了一袋麦子,但很快用光了,再扛出一袋还不够,请你为国王算一下共要给达依尔多少小麦?(1但很快用光了,再扛出一袋还不够,请你为国王算一下共要给达依尔多少小麦?(1 小麦约小麦约颗)颗)解 麦粒总数为 解 麦粒总数为 程序如下:程序如下:a=1;a=1;s=0 s=0 for i=1:64 for i=1:64 s=s+a;s=s+a;a=2*a;a=2*a;end end s=s/1.4/108 s=s/1.4/108 运行后得:运行后得:s=s=1.3176e+011 1.3176e+011 例 2例 2 公元前五世纪我国古代数学家张丘建在算经一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何?公元前五世纪我国古代数学家张丘建在算经一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何?解 设 x:鸡翁数,则 x 的范围:019 解 设 x:鸡翁数,则 x 的范围:019 y:鸡母数,则 y 的范围:033 y:鸡母数,则 y 的范围:033 z:鸡雏数,则 z 的范围:0100 z:鸡雏数,则 z 的范围:0100 则:则:x+y+z=100 x+y+z=100 5x+3y+z/3=100 5x+3y+z/3=100 这是一个不定方程。这是一个不定方程。D=;D=;for x=0:19 for x=0:19 for y=0:33 for y=0:33 for z=0:100 for z=0:100 if(x+y+z=100)&(5*x+3*y+z/3=100)if(x+y+z=100)&(5*x+3*y+z/3=100)d=d;x,y,z;d=d;x,y,z;end end end end end end end end d d 运行后得结果:运行后得结果:d=d=0 25 75 0 25 75 4 18 78 4 18 78 8 11 81 8 11 81 12 4 84 12 4 84 2.While 循环 2.While 循环 While 循环以不定的次数重复执行一组语句。While 循环的一般形式是:While 循环以不定的次数重复执行一组语句。While 循环的一般形式是:while 表达式 1 while 表达式 1 语句 1 语句 1 end end 只要表达式 1 的值为真,就执行 while 和 end 之间的语句 1,否则,就结束循环。只要表达式 1 的值为真,就执行 while 和 end 之间的语句 1,否则,就结束循环。例 3例 3 按下面的公式计算:按下面的公式计算:使误差小于给定的使误差小于给定的.解解 把把作为误差,程序如下:作为误差,程序如下:error=input(请输入误差:);error=input(请输入误差:);x=1;x=1;y=0;y=0;n=1;n=1;while xerror while xerror y=y+1;y=y+1;x=x/n;x=x/n;n=n+1;n=n+1;end end e=y e=y 运行如下:运行如下:请输入误差:0.001 请输入误差:0.001 e=e=2.7181 2.7181 3.IF-ELSE-END 结构 3.IF-ELSE-END 结构 最简单最简单的 If-Else-End 结构是:的 If-Else-End 结构是:if 表达式 1 if 表达式 1 语句 1 语句 1 end end 如果在表达式 1 中的所有元素为真(非零),那么就执行语句 1。如果在表达式 1 中的所有元素为真(非零),那么就执行语句 1。假如有两个选择,If-Else-End 结构是:假如有两个选择,If-Else-End 结构是:if 表达式 1 if 表达式 1 语句 1 语句 1 else else 语句 2 语句 2 end end 在这里,如果表达式 1 为真,则执行语句 1;如果表达式是假,则执行语句 2。在这里,如果表达式 1 为真,则执行语句 1;如果表达式是假,则执行语句 2。当有三个或更多的选择时,If-Else-End 结构采用形式 当有三个或更多的选择时,If-Else-End 结构采用形式 if 表达式 1 if 表达式 1 语句 1 语句 1 elseif 表达式 2 elseif 表达式 2 语句 2 语句 2 elseif 表达式 3 elseif 表达式 3 语句 3 语句 3 elseif 表达式 4 elseif 表达式 4 语句 4 语句 4 elseif elseif else else 语句 语句 end end 如果表达式 1 为真,则执行语句 1,并结束选择结构;如果表达式 1为假,则检验表达式 2,如果表达式 2 为真,则执行语句 2,结束选择结构;如果表达式 2 为假,则检验表达式 3,如此下去,如果所有表达式都为假时,则执行最后的语句。如果表达式 1 为真,则执行语句 1,并结束选择结构;如果表达式 1为假,则检验表达式 2,如果表达式 2 为真,则执行语句 2,结束选择结构;如果表达式 2 为假,则检验表达式 3,如此下去,如果所有表达式都为假时,则执行最后的语句。4.switch-case-end 结构(开关语句)4.switch-case-end 结构(开关语句)如果在一个程序中,必须针对某个变量不同取值情况进行相应操作,如果在一个程序中,必须针对某个变量不同取值情况进行相应操作,switch 语句比语句比 if else 语句更方便。语句更方便。switch 语句的一般形式为:语句的一般形式为:switch 分支条件(数值或字符串)分支条件(数值或字符串)case 数值(或字符串)条件数值(或字符串)条件 1 语句语句 1 case 数值(或字符串)条件数值(或字符串)条件 2 语句语句 2 case 数值(或字符串)条件数值(或字符串)条件 3 语句语句 3 case .otherwise 语句 语句 end 其中分支条件可以是一个函数、变量或者表达式其中分支条件可以是一个函数、变量或者表达式.如果条件如果条件 1 与分支条件匹配就执行语句与分支条件匹配就执行语句 1,并退出此结构;否则,检验条件,并退出此结构;否则,检验条件 2,如果条件,如果条件 2 与分支条件匹配执行语句与分支条件匹配执行语句 2,并退出此结构;否则,检验条件,并退出此结构;否则,检验条件 3,.,当所有条件都不与分支条件匹配时就执行最后的语句。注意,当所有条件都不与分支条件匹配时就执行最后的语句。注意 otherwise 是可以省略的。是可以省略的。

    注意事项

    本文(第03讲-MATLAB编程入门.pdf)为本站会员(qwe****56)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开