第二单元 第3课 Matlab命令执行方式 1.Matlab命令执行方式 2.程序调试.

Slides:



Advertisements
Similar presentations
办公室保健指南. 减少辐射篇 ❤显示器散发出的辐射多数不是来自它的正面,而是侧面和后面。因此,不要 把自己显示器的后面对着同事的后脑或者身体的侧面。 ❤常喝绿茶。茶叶中含有的茶多酚等活性物质,有助吸收放射性物质。 ❤尽量使用液晶显示器。
Advertisements

魏 饴. 处级干部培训班讲座 一、卓越干部的德行素质  常修为政之德、常思贪欲之害、常怀律己之心!  孔老夫子有个观点 “ 为政以德,譬如北辰居其所而众星拱之。 ”  司马光《资治通鉴》 “ 才者,德之资也;德者,才之帅也。 ” “ 德 ” 胜 “ 才 ” 谓之 “ 君子 ” , “ 才 ”
一、真愛密碼 二、尋求真愛 三、有自尊的愛. 。如果雙方對愛情產生 質疑、困惑時,則表示 彼此之間的愛情關係仍 有 待加強或釐清,千萬別 急著為自己的人生大事 下決定。 我是一個 16 歲的未婚媽媽,發現自 己懷孕時,已經五個月大了,我知 道自己沒能力照顧孩子,在驚訝之 於,大人們只好坦然接受,幫我找.
大地遊戲王 課程實錄.
第六讲 MATLAB 语言程序设计 6.1 MATLAB语言的函数的基本结构 6.2 全局、局部变量、子函数与私有目录
3.2 农业区位因素与农业地域类型.
这是一个数字的 乐园 这里埋藏着丰富的 宝藏 请跟我一起走进数学的 殿堂.
加強水銀體溫計稽查管制及回收 回收作業須知及緊急應變措施
105年桃連區適性入學宣導 桃園市十二年國民基本教育宣導團 宣講講師:龍岡國中 校長 郭玉承 時 間:105年 3 月 9 日 1.
第4章 分錄及日記簿 4-1 借貸法則 4-2 日記簿的格式及記錄方法 4-3 分錄的意義及記錄方法 4-4 常見分錄題型分析
K.Top首場研討會 台中場研討會 2003/12/20(六)下午 13: :30.
情緒與壓力管理 手部舒壓運動 第六組.
2011年10月31日是一个令人警醒的日子,世界在10月31日迎来第70亿人口。当日凌晨,成为象征性的全球第70亿名成员之一的婴儿在菲律宾降生。 ?
第九课时 二元一次方程组 .
七(7)中队读书节 韩茜、蒋霁制作.
第十三屆 Step.1 我們的目標 Step.2 我們的角色 Step.4 權利與義務 義務 權利 年繳會費五百元整
初级会计实务 第八章 产品成本核算 主讲人:杨菠.
休閒二乙4A1B0030 陳唯玲 休閒二乙4A1B0020 吳嘉雯 休閒二乙4A1B0040 徐巧恩 指導老師:柯玲玫
散文選及習作 [墨池記] 曾鞏 國二甲 S 洪國勛 指導教授:胡翰平 老師.
避開鳥事、走好運! 懂卜卦的人,一輩子不吃虧!
股 指 期 货 的 应 用 1.
财务管理.
中考阅读 复习备考交流 西安铁一中分校 向连吾.
交通事故處置 當事人責任與損害賠償 屏東縣政府警察局交通隊.
台灣廢物物處理機構 邱騰煥 8 號.
我国的宗教政策 第七课第三框.
植物保护 课程整体设计 汇报 申报省级精品资源共享课建设 植物保护课程组.
中央广播电视大学开放教育 成本会计(补修)期末复习
人教版义务教育课程标准实验教科书 小学数学四年级上册第七单元《数学广角》 合理安排时间 248.
致亲爱的同学们 天空的幸福是穿一身蓝 森林的幸福是披一身绿 阳光的幸福是如钻石般耀眼 老师的幸福是因为认识了你们 愿你们努力进取,永不言败.
1.1.2 四 种 命 题.
五-4 台灣的生活禮俗 組員:603 15號 黃醴萬 6號 吳家熙 5號 楊証傑 11號 李偉新.
政府扶持资金通览 技术改造篇.
第十二单元 第28讲 第28讲 古代中国的科技和文艺   知识诠释  思维发散.
中考语文积累 永宁县教研室 步正军 2015.9.
空間向量 朱泰吉 蔡宇翔 張力夫 莊孟霏.
课标教材下教研工作的 实践与思考 山东临沂市教育科学研究中心 郭允远.
小学数学知识讲座 应用题.
第八章二元一次方程组 8.3实际问题与二元一次方程组.
第八章二元一次方程组 8.3实际问题与二元一次方程组 (第3课时).
倒装句之其他句式.
高点定位 精准发力 扎实推进优质均衡再上新台阶 ——全县初中教学工作会议讲话
Matlab及其应用 鲍文 哈尔滨工业大学 先进动力控制与可靠性研究所
第 22 课 孙中山的民主追求 1 .近代变法救国主张的失败教训: “师夷之长技以制 夷”“中体西用”、兴办洋务、变法维新等的失败,使孙中山
本科生医保资料的提交.
行行重行行,與君生別離。 相去萬餘里,各在天一涯。 行行重行行:走了一程又一程 生別離:在有生之年分離 語出楚辭:「悲莫悲兮生別離,
Matlab M檔案 方煒 台大生機系.
統計圖表的製作.
Z Mathematical Model ‡ ' MATLAB简介.
講師:戴志華 國立台灣大學電機工程研究所 Visual Basic 程式設計 講師:戴志華 國立台灣大學電機工程研究所.
3 S7-200可编程控制器 使用入门 2019/2/17.
暴力、草莽、土野、情色、權慾 —華西街的成人童話
第2章 MATLAB程序设计 编者.
刑事訴訟法 不受理.
MATLAB 程式設計入門篇 初探MATLAB
第二章 MATLAB编程与作图 2.1 程序设计 2.2 作图 2.3 在线帮助和文件管理 2.4 习题 2019年4月23日
畢業資格審查系統 操作步驟說明.
西式點心 派的種類 單皮派 雙皮派 油炸派 派的製作 派的烤焙.
通識課程 職場危害與管理 組員:吳敬揚 黃于真 黃家賢 張龍溪.
問題解決與流程圖 高慧君 台北市立南港高中 2006年12月22日.
MATLAB 程式設計 程式除錯 方煒 台大生機系.
批次請(休)假單 功能路徑:[請假作業專區]→[批次請(休)假單] 功能說明:提供使用者線上申請/維護 多天、不連續請(休)假
F1-20P PLC简易编程器的使用.
美丽的旋转.
畢氏定理(百牛大祭)的故事 張美玲 製作 資料來源:探索數學的故事(凡異出版社).
数学是知识的工具,亦是其它知识工具的泉源。 ——勒内·笛卡尔
MATLAB 程式設計入門篇 程式除錯 張智星 (Roger Jang)
第二节 偏 导 数 一、 偏导数概念及其计算 二 、高阶偏导数.
成本會計 在決策中的功能 第四課 1.
102年人事預算編列說明 邁向頂尖大學辦公室製作.
Presentation transcript:

第二单元 第3课 Matlab命令执行方式 1.Matlab命令执行方式 2.程序调试

1. Matlab命令的执行方式 1、交互式命令执行方式(命令窗口) 2、M文件的程序执行方式 (1)用Matlab语言编写的程序,称为M文件:是由若干Matlab命令组合在一起构成的,它可以完成某些操作,也可以实现某种算法。    M文件根据调用方式的不同分为两类:         命令文件(Script File)         函数文件(Function File)    它们的扩展名都是.m

(2)命令文件没有输入参数,也不返回输出参数;函数文件可以带输入参数,也可以返回输出参数。命令文件对工作空间中的变量进行操作,文件中所有命令的执行结果也返回工作空间中;函数文件中定义的变量为局部变量,当函数文件执行完毕时,这些变量也被清除。命令文件可以直接运行;函数文件不能直接运行,要以函数调用的方式来调用它。

例7.1  :命令文件: clear; a = 1:10; b = [11,12,13,14;15,16,17,18]; c = a; a = b; b = c; a b 3、M文件的建立与打开 M文件是一个文本文件,可以用任何编辑程序来建立和编辑,一般最常用的是使用Matlab提供的文本编辑器。该编辑器是一个集编辑和调试于一体的工作环境。

4、函数文件的基本结构 函数文件由function语句引导,其基本结构为: function  输出形参表 = 函数名(输入形参表)            注释说明部分            函数体语句 end   其中,以function开头的一行为引导行,表示该M文件是一个函数文 件。当输出形参多于一个时,应该用方括号括起来。

说明: (1).关于函数文件名     函数文件名通常由函数名再加上扩展名.m组成。     当函数文件名与函数名不同时,Matlab将忽略函数名而确认文件名     因此调用时使用函数文件名。

(2). 关于注释说明部分     注释说明包括3部分:    ① 紧随引导行之后以%开头的第一注释行。         这一行一般包括大写的函数文件名和函数功能简要描述,供lookfor关键词查询和help在线帮助时使用。    ② 第一注释行及之后连续的注释行。       通常包括函数输入/输出参数的含义及调用格式说明等信息,构成全部在线帮助文本。   ③与在线帮助文本相隔一空行的注释行。      包括函数文件编写和修改的信息,如作者和版本等。

(3)、关于return语句          如果在函数文件中插入了return语句,则执行到该语句就结束函数      的执行,流程转至调用该函数的位置。通常也不使用return语句。 例7.2 :函数文件 %fexch.m function [a,b] = exch(a,b)     c = a; a = b; b = c; end

(4)、函数调用 函数调用的一般格式是:  [输出实参表] = 函数名(输入实参表)  注意:函数调用时,各实参出现的顺序、个数,应与函数定义时相同。 %将例7.2函数文件以文件名fexch.m保存,然后在命令窗口调用该函数文件: clear; x = 1:10; y = [11,12,13,14;15,16,17,18]; [x,y] = fexch(x,y)

(5)函数的嵌套调用 在Matlab中,函数可以嵌套调用,即一个函数可以调用别的函数。一个函数调用自身称为函数的递归调用。  例7.3 利用函数的递归调用,求n!。   n!本身就是以递归的形式定义的: function f = factor(n)  if n<=1      f = 1;  else      f = factor(n-1)*n;  %递归调用求(n-1)!  end

(6)函数的嵌套调用 例7.4 在命令文件中调用例6.3函数文件,求s=1!+2!+3!+4!+5!的程序:    s = 0;   for i = 1:5         s = s + factor(i);   end   s

(6)函数参数的可调性    Matlab在函数调用上有一个与一般高级语言不同之处:  函数所传递参数数目的可调性,即参数的数量可以改变。在调用函数时Matlab用两个预定义变量nargin和nargout分别记录调用该函数时的输入实参和输出实参的个数。

例7.5 nargin用法示例  函数文件examp.m:  function fout = charray(a,b,c)  if nargin == 1      fout = a; end  if nargin == 2      fout = a+b; if nargin == 3      fout = (a*b*c)/2;  end

5、全局变量与局部变量 Matlab中,函数文件中的变量是局部变量。如在若干函数中,都把某一变量定义为全局变量,那么这些函数将共用这个变量。全局变量的作用域是整个Matlab的工作空间,所有函数都可以对它进行存取和修改。   

全局变量用global命令定义,格式为:  例7.6 全局变量应用示例。  先建立函数文件wadd.m,该函数将输入的参数加权相加:  function f = wadd(x,y)                                            global ALPHA,BETA                                            f = ALPHA*x + BETA*y;  end     

在命令窗口中输入:               global ALPHA BETA        ALPHA = 1; BETA =2; s = wadd(1,2) 输出为:s =        5

3.程序调试 1、程序调试概述 程序调试是程序设计的重要环节,也是程序设计人员必须掌握的重要技能。Matlab提供了相应的程序调试功能,即可以通过文本编辑器对程序进行调试,又可以在命令窗口结合具体的命令进行。   一般说来,应用程序的错误有两类,一类是语法错误,另一类是运行时的错误。语法错误,给出相应的错误信息,并标出错误在程序中的行号。

例7.7: 输入下列程序:   A = 87;   B = 9.3;   C = A+*B;   系统将给出错误信息: ???Error: File: Untitled1.m Line: 3 Column: 7 UnexpectedMATLAB operator. 通过分析Matlab给出的错误信息,不难排查程序中的语法错误。

2、Matlab调试菜单 尽管Matlab对程序逻辑错误时无能为力的,不会给出任何提示信息,但还是可以通过调试手段来发现。 采取的方法如下: ①将程序的一些主要中间结果输出到命令窗口,从而确定错误的区段。 ② 使用Matlab的调试菜单(debug),通过图像界面操作来实现程序调试。  step:单步运行,不进入函数;  step in: 单步运行,进入函数;  step out:停止单步运行;  save and run:存储文件并开始运行。

stop if error/warnings: 断点操作,在程序执行出现错误或警告时,停止程序运行,进入调试状态。 ③或使用命令方式来实现程序

例7.8程序的调试  有一个求水仙花数的程序ex.m,试设置断点来控制程序执行。 调试步骤如下: ① 在if语句处设置断点:将插入点移至if语句所在行,选择Debug菜单的      Set/Clear Breakpoint命令,在该行前面有一个红色圆点,程序运行时      将在断点处暂停。 ② 运行程序,检查中间结果。在命令窗口输入命令:      ex      在窗口命令的K>>后输入变量名,检查变量的值。可以分析判断程序 的正确性。

③ 选择Debug菜单中的Continue命令,程序继续运行,在断点处又暂停,再检查变量的值,一直到发现问题为止。 ④ 切换工作空间,结束对程序的调试。打开编辑窗口中的Stack下拉列表框,从中选择Base,即将工作空间切换到主工作空间。然后选择Debug菜单中的Set Clear Breakpoint 命令清楚已设置的断点,在选择Continue命令,去除白色箭头,完成调试。